题解
1、这里需要注意,一秒 = 1000毫秒
2、这里的输入的数据超过了int的范围,需要用long long进行存储
注意: 这里正常按照题目意思进行求解即可。
如果不知道1s = 1000ms ,可以通过样例推出来。
即 13 小时 = 46800 s,样例:46800999
很明显可以看出,1s = 1000ms
#include<iostream>
using namespace std;
typedef long long LL;
int main()
{
LL tim;
scanf("%lld",&tim);
tim /= 1000;//毫秒换算成秒
int hour = 0, min = 0, sec = 0;
hour = tim / 3600 % 24;
min = tim / 60 % 60;
sec = tim % 60;
printf("%02d:%02d:%02d\n",hour , min , sec);
return 0;
}
请问为什么要
%02d:%02d:%02d
呀如果是两位就不补前导0吗可以百度一下%02d的含义,不足2位,补前导0,大于等于2位不输出前导0
感谢你!!!
简单易懂!
🎨