时间转换问题PTA

本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)。

输入格式:

输入在第一行中以hh:mm:ss的格式给出起始时间,第二行给出整秒数n(<60)。

输出格式:

输出在一行中给出hh:mm:ss格式的结果时间。

输入样例:

11:59:40
30

输出样例:

12:00:10

代码如下:

#define _CRT_SECURE_NO_WARNINGS
#include<math.h>
#include<iostream>
#include<iomanip>
#include<stdio.h>
#include<string.h>
using namespace std;
int main()
{
    int hh, mm, ss, sum,sec;
    scanf("%02d:%02d:%02d",&hh,&mm,&ss);
    cin >> sec;
    ss += sec;
    if (ss >= 60)
    {
        sum = ss / 60;
        ss = (ss % 60);
        mm += sum;
        if (mm >= 60)
        {
            sum = mm / 60;
            mm = (mm % 60);
            hh += sum;
            if (hh >= 24)
            {
                hh = (hh % 24);
            }
        }
    }
    printf("%02d:%02d:%02d", hh, mm, ss);
    return 0;
}