本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)。
输入格式:
输入在第一行中以hh:mm:ss的格式给出起始时间,第二行给出整秒数n(<60)。
输出格式:
输出在一行中给出hh:mm:ss格式的结果时间。
输入样例:
11:59:40
30
输出样例:
12:00:10
#include<stdio.h>
struct time{ //定义数据结构 time
int hour;
int minute;
int secend;
};
int main()
{
struct time time1;
time1.hour=0;
time1.minute=0;
time1.secend=0;
int n;
scanf("%d:%d:%d %d",&time1.hour,&time1.minute,&time1.secend,&n);
time1.secend+=n; //加上秒
if(time1.secend>=60){ //如果新加后的秒大于60,将60秒换算成1分钟,分钟小时同理
time1.minute++;
time1.secend-=60;
}
if(time1.minute>=60){
time1.hour++;
time1.minute-=60;
}
if(time1.hour>=24){ //如果小时大于等于24,则是新的一天,从00:00:00重新开始
time1.hour-=24;
}
printf("%02d:%02d:%02d",time1.hour,time1.minute,time1.secend);
return 0;
}
本文介绍了一个简单的C语言程序,该程序接收一个以hh:mm:ss格式表示的时间和一个整数秒n作为输入,然后计算并输出这个时间点之后n秒的时间值。程序考虑了时间进位的情况,例如秒数超过59时会转换为分钟。
1220





