#include<stdio.h> #define days 86400 #define hours 3600 #define mins 60 int main() { long long msNum,sNum,dNum; scanf("%lld",&msNum); sNum = msNum/1000; dNum = sNum%days; int numHour,numMin,numSecond; numHour = dNum/hours; numMin = (dNum%hours)/mins; numSecond = dNum%60; if(numHour<10){ printf("0");} printf("%d:",numHour); if(numMin<10){ printf("0");} printf("%d:",numMin); if(numSecond<10){ printf("0");} printf("%d",numSecond); return 0; }
时间: 2024-04-04 11:33:41 浏览: 50
这是一个将毫秒转换为时分秒格式的程序。具体来说,题目描述如下:
输入一个正整数,表示时间的毫秒数,将其转换为时分秒格式输出。
这个程序通过输入一个 long long 类型的变量 msNum 来存储时间的毫秒数,然后定义两个 long long 类型的变量 sNum 和 dNum,分别表示时间的秒数和天数。其中,sNum = msNum/1000,dNum = sNum%days。
然后定义三个 int 类型的变量 numHour、numMin 和 numSecond,分别表示小时、分钟和秒数。其中,numHour = dNum/hours,numMin = (dNum%hours)/mins,numSecond = dNum%60。
最后,通过 if 语句来判断时、分、秒是否小于 10,如果小于 10,则在前面加上 0;然后通过 printf 函数输出时分秒格式的时间即可。
这个程序的时间复杂度为 O(1),空间复杂度为 O(1)。
阅读全文