我有兩個日期時間之間的時間差。以秒爲單位的間隔是3660,這意味着1小時和1分鐘前。我怎樣才能顯示像我以前說過的幾小時和幾分鐘的時間間隔?我可以通過做(3600/60)/60
得到小時,這給了我一個小時,但我怎麼得到與小時的剩餘分鐘?如何獲得時間間隔秒數在目標c
任何幫助表示讚賞。
我有兩個日期時間之間的時間差。以秒爲單位的間隔是3660,這意味着1小時和1分鐘前。我怎樣才能顯示像我以前說過的幾小時和幾分鐘的時間間隔?我可以通過做(3600/60)/60
得到小時,這給了我一個小時,但我怎麼得到與小時的剩餘分鐘?如何獲得時間間隔秒數在目標c
任何幫助表示讚賞。
事情是這樣的:
int totalTime = 3660;
int hours = totalTime/3600;
int minutes = (totalTime % 3600)/60;
使用模操作:
(3660/60) % 60 = 1
模的例子:
0 % 3 = 0
1 % 3 = 1
2 % 3 = 2
3 % 3 = 0
4 % 3 = 1
5 % 3 = 2
6 % 3 = 0
7 % 3 = 1
...
看到這裏的格局?
您可以使用C div
功能得到商和餘數用一個函數調用。
#include <stdio.h>
#include <stdlib.h> //div_t
int main (int argc, char const *argv[])
{
int seconds = 3661;
div_t hrmin, minsec;
minsec = div(seconds, 60);
hrmin = div(minsec.quot, 60);
printf("%i seconds equals %i hours, %i minutes and %i seconds.\n", \
seconds, hrmin.quot, hrmin.rem, minsec.rem);
return 0;
}