题目如下
我们可以简单分析一下
第一步,我们需要输入秒数
第二步,进行下简单的数学分析(如何转化为时分秒)
第三步,输出时分秒
---------------------------------------------------------------------------------------------------------------------------------
那么主要的问题就在于第二步
(分析如下)
---------------------------------------------------------------------------------------------------------------------------------
1. 我们知道 1小时 = 60分 = 3600 秒 ,所以只需要让 任意秒数除以3600 就可以得到小时数
拿例子来说, 输入3661秒,除以3600后 就会得到 1小时 ;
---------------------------------------------------------------------------------------------------------------------------------
2. 那么如何得到分钟呢?
在我们计算完有多少小时后,可以用我们输入的秒数 减去 转化为小时的秒数,即 3661-3600 ,就会得到剩余秒数———61秒
将这61秒转化为分钟,即 61除以60 就可以得到——1分钟
---------------------------------------------------------------------------------------------------------------------------------
3. 现在总共得到的是 1小时 1分钟 ,那么秒数怎么办呢? ?
秒数我们只需要输出转化为分钟后所剩余的秒数即可,因为在转化为小时和分钟后,所剩余的秒数,一定在60s以内,否则就会生成多一分钟
-------------------------------------------------------------------------------------------------------------------------------- 总结代码如下
---------------------------------------------------------------------------------------------------------------------------------
#include<stdio.h>
int main()
{
int second = 0;
scanf("%d", &second); //输入多少秒
int hour = second / 3600; //剩余秒数转化为小时
second = second - 3600*hour; //转化为小时后剩余多少秒
int min = second / 60; //剩余秒数转化为分钟
second = second - 60 * min; //转化为分钟后剩多少秒
//在此之后剩余秒数范围一定在(0-59)以内
printf("%d %d %d",hour,min,second);
return 0;
}