PAT-BASIC-1026-程式已耗用時間

來源:互聯網
上載者:User

標籤:

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

這裡不妨簡單假設常數CLK_TCK為100。現給定被測函數前後兩次獲得的時鐘打點數,請你給出被測函數啟動並執行時間。

輸入格式:

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

輸出格式:

在一行中輸出被測函數啟動並執行時間。已耗用時間必須按照“hh:mm:ss”(即2位的“時:分:秒”)格式輸出;不足1秒的時間四捨五入到秒。

輸入範例:

123 4577973

輸出範例:

12:42:59

將兩個整數的差值除以100後轉換成時間
有兩個注意點,一是四捨五入,二是輸出格式。
#include <bits/stdc++.h>using namespace std;int  main(){    int data1, data2;    int dif;    cin >> data1 >> data2;    dif = data2 - data1;    if(dif % 100 >= 50){        dif = dif/100 + 1;    }    else{        dif = dif/100;    }    printf("%02d:%02d:%02d", dif/3600, (dif%3600)/60, dif%60);    return 0;}
CAPOUIS‘CODE

 

PAT-BASIC-1026-程式已耗用時間

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.