C语言 · 计算时间

算法提高 计算时间  
时间限制:1.0s   内存限制:512.0MB
    
问题描述
  给定一个t,将t秒转化为HH:MM:SS的形式,表示HH小时MM分钟SS秒。HH,MM,SS均是两位数,如果小于10用0补到两位。
输入格式
  第一行一个数T(1<=T<=100,000),表示数据组数。后面每组数据读入一个数t,0<=t<24*60*60。
输出格式
  每组数据一行,HH:MM:SS。
样例输入
2
0
86399
样例输出
00:00:00
23:59:59
 
作者注释:水题却也学到了新技能——不够位补0的情况:比如本题:printf("%02d:%02d:%02d\n",hour,min,second);
 1 #include<stdio.h>
 2 int main(){
 3     int n;
 4     scanf("%d",&n);
 5     while(n--){
 6         long long t;
 7         scanf("%lld",&t);
 8         int hour,min,second;
 9         hour = t/3600;
10         min = (t-hour*3600)/60;
11         second = t-hour*3600-min*60;
12         printf("%02d:%02d:%02d\n",hour,min,second);
13     }
14     return 0;
15 }

 

posted @ 2017-03-23 23:45  人间烟火地三鲜  阅读(1080)  评论(0编辑  收藏  举报