思路:
1.将两个数分为前两位和后两位。
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())
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)