题目:
【问题描述】
从键盘输入24小时制的某个时间,计算并输出其前一秒和后一秒的时间。
【输入形式】
从键盘输入24小时制的某个时间,格式为:hh:mm:ss。
【输出形式】
输出2行,第1行为输入时间的前1秒时间,第2行为输入时间的后1秒时间,格式为:hh:mm:ss。
【样例输入1】
09:59:59
【样例输出1】
09:59:58
10:00:00
【样例输入2】
00:00:00
【样例输出2】
23:59:59
00:00:01
【评分标准】
结果完全正确得20分,共4个测试点。
#include<stdio.h>
int main()
{
int h,min,s;
int h1,min1,s1;
int h2,min2,s2;
scanf("%2d:%2d:%2d",&h,&min,&s);
s1=s-1;
h1=h;
min1=min;
if(s1<0)
{
min1=min-1;
s1+=60;
if(min1<0)
{
h1=h-1;
min1+=60;
if(h1<0)
{
h1+=24;
}
}
}
s2=s+1;
h2=h;
min2=min;
if(s2>=60)
{
min2+=1;
s2-=60;
if(min2>=60)
{
min2-=60;
h2+=1;
if(h2>=24)
{
h2-=24;
}
}
}
if(h1<10)
printf("0%d:",h1);
else
printf("%d:",h1);
if(min1<10)
printf("0%d:",min1);
else
printf("%d:",min1);
if(s1<10)
printf("0%d\n",s1);
else
printf("%d\n",s1);
if(h2<10)
printf("0%d:",h2);
else
printf("%d:",h2);
if(min2<10)
printf("0%d:",min2);
else
printf("%d:",min2);
if(s2<10)
printf("0%d\n",s2);
else
printf("%d\n",s2);
return 0;
}