【发布时间】:2011-01-26 01:09:34
【问题描述】:
大家好。我一直在继续学习 C++,并且一直在接受将秒转换为日、分和秒等格式的“挑战”。
例如:31600000 = 365 天 46 分钟 40 秒。
using namespace std;
const int hours_in_day = 24;
const int mins_in_hour = 60;
const int secs_to_min = 60;
long input_seconds;
cin >> input_seconds;
long seconds = input_seconds % secs_to_min;
long minutes = input_seconds / secs_to_min % mins_in_hour;
long days = input_seconds / secs_to_min / mins_in_hour / hours_in_day;
cout << input_seconds << " seconds = "
<< days << " days, "
<< minutes << " minutes, "
<< seconds << " seconds ";
return 0;
它可以工作并提出正确的答案,但在完成它之后,我查看了其他人如何解决它,而他们的答案却有所不同。我想知道我是否遗漏了什么。
谢谢,丹。
【问题讨论】:
-
天 = 时间 / 86400 小时 = (时间 / 3600) - (天 * 24) 分钟 = (时间 / 60) - (天 * 1440) - (小时 * 60) 秒 = 时间 mod 60谢谢。