如何用C语言实现时间相加

如何用C语言实现时间相加,第1张

思路:

1.将两个数分为前两位和后两位。

2.后两位先相加,如果超过60,则减去60,并进一位。

3.前两位相加还要加上进位,如果超过24,则减去24.

4.将前两位和后两位组合,形成最终要输出的形式

完整的程序代码如下,不懂之处可以看注解:

#include<stdio.h>

void main()

{

int a,b,c,d,e,f,ab,ce,df

int i=0

printf("Input two number:\n")//输入两行数据,每行一个整数。

scanf("%d%d",&a,&b)  //a代表第一个数,b代表第二个数

c=a/100             //c代表a的前两位数

d=a%100            //d代表a的后两位数

e=b/100           //e代表b的前两位数

f=b%100          //f代表b的后两位数

df=d+f

if(df>=60)       //如果后两位相加超过60,则减去60,并进一位。

{

df-=60

i++

}

ce=c+e+i

if(ce>=24)       //如果前两位相加超过24,则减去24。

{

ce-=24

}

ab=ce*100+df   //最后需要输出的数据

printf("The output is:\n%d\n",ab)

}

ps:运行结果如下:

c里面有个关于时间的tm结构体,可得到本地时间。给个例子,自己去实验。如下:

int date()

{

int year,mon,day,hour,min,sec,a

struct tm *d

time_t t

time(&t)

d=localtime(&t)

year=d->tm_year+1900

mon=d->tm_mon+1

day=d->tm_mday

hour=d->tm_hour

min=d->tm_min

sec=d->tm_sec

a=day+100*mon+10000*year

return a

}

void main()

{

struct tm *d

time_t t

//long t

time(&t)

//struct tm * local_time = localtime(&t)

d=localtime(&t)

printf("%s\n",ctime(&t))

printf("%d\n",d->tm_mon+1)

printf("%d\n",d->tm_mday)

printf("%d\n",d->tm_year+1900)

printf("%d\n",d->tm_hour)

printf("%d\n",date())

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/bake/11340311.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存