PAT Basic 1026. 程序運行時間(15)(C語言實現(xiàn))

我的PAT系列文章更新重心已移至Github,歡迎來看PAT題解的小伙伴請到Github Pages瀏覽最新內容。此處文章目前已更新至與Github Pages同步。歡迎star我的repo

題目

要獲得一個 C 語言程序的運行時間,常用的方法是調用頭文件 time.h,其中提供了 clock() 函數(shù),可以捕捉從程序開始運行到 clock()
被調用時所耗費的時間。這個時間單位是 clock tick,即“時鐘打點”。同時還有一個常數(shù)
CLK_TCK,給出了機器時鐘每秒所走的時鐘打點數(shù)。于是為了獲得一個函數(shù) f 的運行時間,我們只要在調用 f 之前先調用
clock(),獲得一個時鐘打點數(shù) C1;在 f 執(zhí)行完成后再調用 clock(),獲得另一個時鐘打點數(shù) C2;兩次獲得的時鐘打點數(shù)之差 (C2-C1)
就是 f 運行所消耗的時鐘打點數(shù),再除以常數(shù) CLK_TCK,就得到了以秒為單位的運行時間。

這里不妨簡單假設常數(shù) CLK_TCK 為 100?,F(xiàn)給定被測函數(shù)前后兩次獲得的時鐘打點數(shù),請你給出被測函數(shù)運行的時間。

輸入格式:

輸入在一行中順序給出 2 個整數(shù) C1 和 C2。注意兩次獲得的時鐘打點數(shù)肯定不相同,即 C1 < C2,并且取值在 [0, 10^7]

輸出格式:

在一行中輸出被測函數(shù)運行的時間。運行時間必須按照 hh:mm:ss(即2位的 時:分:秒)格式輸出;不足 1 秒的時間四舍五入到秒。

輸入樣例:

123 4577973

輸出樣例:

12:42:59

思路

這道題也是最簡單的一類題,考慮到四舍五入就行了。

代碼

最新代碼@github,歡迎交流

#include <stdio.h>

int main()
{
    int C1, C2, T;

    scanf("%d %d", &C1, &C2);
    T = (C2 - C1 + 50) / 100;   /* rounding */
    printf("%02d:%02d:%02d", T/3600, T%3600/60, T%60);

    return 0;
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 傳送門 https://pintia.cn/problem-sets/994805260223102976/pro...
    Rush的博客閱讀 1,241評論 0 0
  • 描述 要獲得一個C語言程序的運行時間,常用的方法是調用頭文件time.h,其中提供了clock()函數(shù),可以捕捉從...
    tingshuo123閱讀 233評論 0 0
  • 1 前言 如果我們用C語言或者C++實現(xiàn)了相同問題的不同算法,要比較各種算法的優(yōu)劣程度,就需要測定依據(jù)某一算法編寫...
    Veahow閱讀 999評論 0 0
  • ### 你好 - www
    keepthink閱讀 209評論 0 1
  • 二月雖是到了立春時節(jié),但當時北京的天也是清冷的。 料峭的風灌到衣袖里,躲都躲不開,只能由著它在身上探索,連心底里的...
    麥克不姓麥閱讀 393評論 2 3

友情鏈接更多精彩內容