1. 程式人生 > >程式執行時間

程式執行時間

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

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

#include <iostream>
#include <iomanip> 

using namespace std;

int main() {
    int c1, c2, h, q;
    int hh, mm, ss;

    cin >> c1;
    cin >> c2;

    h = c2 - c1;
    q = h % 100;
    h = h / 100;

    hh = h / 3600; h = h - 3600 * hh;
    mm = h / 60; h = h - 60 * mm;

    if (q < 50) {
        ss = h;
    }

    if (q >= 50)
        ss = h + 1;

    cout <<setfill('0')<<setw(2)<< hh << ":" << setw(2) << mm << ":" << setw(2) << ss;

    return 0;
}