PTA | 程序设计类实验辅助教学平台 (pintia.cn) 这道题主要考时间的进制转换:
秒->时 (/3600) 剩余的分钟数( /60) 剩余的秒数(%60)
#include<iostream>
#include <cmath>
using namespace std;
int sumsecond,hh,mm,ss;
int main()
{
int c1,c2;cin>>c1>>c2;
sumsecond=(c2-c1)/100;
hh=sumsecond/3600;
mm=sumsecond%3600/60;
ss=sumsecond%60;
printf("%02d:%02d:%02d",hh,mm,ss);
return 0;
}
不过这道题要注意的一点是精度问题,上面的代码运行之后并没有四舍五入,我们需要修改一下,加50秒,加上50这样转换之后如果直接进一位说明原本就是要五入的,如果加上这50还不能往前进就说明要舍去:
sumsecond=(c2-c1+50)/100;