以 hh: mm: ss 的形式给出同一天的两个时刻,打印出这两个时刻之间的秒数。以字符...
以 hh: mm: ss 的形式给出同一天的两个时刻,打印出这两个时刻之间的秒数。以字符串的形式输入hh:mm:ss(C语言代码)实例:
输入
12:00:00
17:00:00
输出
18000
实例2
输入
23:59:59
00:00:00
输出
86399 本帖最后由 sunrise085 于 2020-7-13 13:28 编辑
先写一个简单的,没有任何容错的措施。需要输入者自己保证输入的是正确的时间。
注意:冒号是引文的冒号
# include<stdio.h>
int main()
{
int h1,m1,s1,h2,m2,s2,s;
scanf("%d:%d:%d",&h1,&m1,&s1);
scanf("%d:%d:%d",&h2,&m2,&s2);
s=s2-s1+(m2-m1)*60+(h2-h1)*3600;
if (s<0)
s=-s;
printf("%d",s);
return 0;
} 确保输入的时分秒在正确范围,不会出现25:68:-2的情况
# include<stdio.h>
int main()
{
int h1,m1,s1,h2,m2,s2,s;
while(1)
{
scanf("%d:%d:%d",&h1,&m1,&s1);
scanf("%d:%d:%d",&h2,&m2,&s2);
//if...else...规定时分秒的范围,输入错误需要重新输入。
if(h1>=0 && h1<24 && m1>=0 && m1<60 && s1>=0 && s1<60 && h2>=0 && h2<24 && m2>=0 && m2<60 && s2>=0 && s2<60)
break;
else
printf("输入有误,请重新输入!");
}
s=s2-s1+(m2-m1)*60+(h2-h1)*3600;
if (s<0)
s=-s;
printf("%d",s);
return 0;
} #include<stdio.h>
int main(void) {
int t, S, M, H,i;
int a;
for(i=0;i<2;i++)
{
for(i=0;i<6;i++)
{
scanf("%d",&a);
}
S = a*10+a;
M = a*10+a;
H = a*10+a;
t=S+M*60+H*3600;
printf("%d\n",t);
}
}
但是这个输出结果不对{:9_221:} 有没有人可以帮帮我{:9_222:} 炎黄子孙 发表于 2020-7-13 13:36
有没有人可以帮帮我
????没有看到我在2楼和3楼写的回答?? 刚刚看到,稍等我试一下 对的,谢谢大佬{:5_109:},感谢啦{:7_123:}
页:
[1]