題目來源html
要得到一個 C 語言程序的運行時間,經常使用的方法是調用頭文件 time.h,其中提供了 clock() 函數,能夠捕捉從程序開始運行到 clock() 被調用時所耗費的時間。這個時間單位是 clock tick,即「時鐘打點」。同時還有一個常數 CLK_TCK,給出了機器時鐘每秒所走的時鐘打點數。因而爲了得到一個函數 f 的運行時間,咱們只要在調用 f 以前先調用 clock(),得到一個時鐘打點數 C1;在 f 執行完成後再調用 clock(),得到另外一個時鐘打點數 C2;兩次得到的時鐘打點數之差 (C2-C1) 就是 f 運行所消耗的時鐘打點數,再除以常數 CLK_TCK,就獲得了以秒爲單位的運行時間。ios
這裏不妨簡單假設常數 CLK_TCK 爲 100。現給定被測函數先後兩次得到的時鐘打點數,請你給出被測函數運行的時間。函數
輸入在一行中順序給出 2 個整數 C1 和 C2。注意兩次得到的時鐘打點數確定不相同,即 C1 < C2,而且取值在 [。spa
在一行中輸出被測函數運行的時間。運行時間必須按照 hh:mm:ss
(即2位的 時:分:秒
)格式輸出;不足 1 秒的時間四捨五入到秒。code
123 4577973
12:42:59
(C2 - C1) / 100 是總秒數htm
int ans = (C2 - C1) / 100 + 0.5; 這裏就是將秒數四捨五入了blog
ans / 3600 是總小時數ip
ans % 3600 是去除小時後,剩餘的秒數ci
ans % 60 是秒數get
#include <iostream> using namespace std; int main() { double C1, C2; cin >> C1 >> C2; int ans = (C2 - C1) / 100 + 0.5; // 四捨五入後的秒數 printf("%02d:%02d:%02d", ans / 3600, ans % 3600 / 60, ans % 60); return 0; }