亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C語(yǔ)言中計(jì)算函數(shù)執(zhí)行時(shí)間的三種方式

 更新時(shí)間:2023年09月08日 15:37:13   作者:淼叔  
本文主要介紹了C語(yǔ)言中計(jì)算函數(shù)執(zhí)行時(shí)間的三種方式,主要包括clock(),timeb和time,具有一定的參考價(jià)值,感興趣的可以了解一下

這篇文章主要介紹三種計(jì)算執(zhí)行時(shí)間的方式。

方式1: time + difftime

使用time.h標(biāo)準(zhǔn)庫(kù)中的time和difftime函數(shù)可以返回記錄的兩次time_t結(jié)構(gòu)的時(shí)間之間的差值,這種方式只能精確到秒級(jí),代碼示例如下:

#include <stdio.h>
#include <time.h>

int fibonacci(int n) {
    if(n == 0 || n == 1) return 1;
    return fibonacci(n-1) + fibonacci(n-2);
}

int main() {
    int n = 0;
    while(~scanf("%d",&n)) {
        time_t start_time=0, end_time=0;
        time(&start_time);
        printf("fibonacci(%d)=%d\n",n,fibonacci(n));
        time(&end_time);
        printf("Time Used: %f\n",difftime(end_time,start_time));
    }
    return 0;
}
  • 執(zhí)行結(jié)果如下

45
fibonacci(45)=1836311903
Time Used: 9.000000

方式2: clock + CLOCKS_PER_SEC

另外利用clock函數(shù)代替time函數(shù)也能起到相同作用,這種方式通過(guò)計(jì)算兩個(gè)clock函數(shù)之間的時(shí)鐘單元來(lái)實(shí)現(xiàn),代碼示例如下:

#include <stdio.h>
#include <time.h>

int fibonacci(int n) {
    if(n == 0 || n == 1) return 1;
    return fibonacci(n-1) + fibonacci(n-2);
}

int main() {
    int n = 0;
    while(~scanf("%d",&n)) {
        time_t start_time=0, end_time=0;
        start_time=clock();
        printf("fibonacci(%d)=%d\n",n,fibonacci(n));
        end_time=clock();
        printf("Time Used: %f\n",(double)(end_time-start_time)/CLOCKS_PER_SEC);
    }
    return 0;
}
  • 執(zhí)行結(jié)果如下

45
fibonacci(45)=1836311903
Time Used: 8.715660

方式3: timeb+ftime

另外利用clock函數(shù)代替time函數(shù)也能起到相同作用,這種方式通過(guò)計(jì)算兩個(gè)clock函數(shù)之間的時(shí)鐘單元來(lái)實(shí)現(xiàn),代碼示例如下:

#include <stdio.h>
#include <sys/timeb.h>
#include <string.h>
int fibonacci(int n) {
    if(n == 0 || n == 1) return 1;
    return fibonacci(n-1) + fibonacci(n-2);
}

int main() {
    int n = 0;
    while(~scanf("%d",&n)) {
        struct timeb start_time, end_time;
        memset(&start_time,0,sizeof(struct timeb));
        memset(&start_time,0,sizeof(struct timeb));
        ftime(&start_time);
        printf("fibonacci(%d)=%d\n",n,fibonacci(n));
        ftime(&end_time);
        printf("Time Used: %d.%d\n",end_time.time-start_time.time,end_time.millitm-start_time.millitm);
    }
    return 0;
}
  • 執(zhí)行結(jié)果如下

45
fibonacci(45)=1836311903
Time Used: 8.621

總結(jié)

到此這篇關(guān)于C語(yǔ)言中計(jì)算函數(shù)執(zhí)行時(shí)間的三種方式的文章就介紹到這了,更多相關(guān)C語(yǔ)言計(jì)算函數(shù)執(zhí)行時(shí)間內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一文詳解C++中的轉(zhuǎn)換構(gòu)造函數(shù)

    一文詳解C++中的轉(zhuǎn)換構(gòu)造函數(shù)

    在 C/C++ 中,不同的數(shù)據(jù)類型之間可以相互轉(zhuǎn)換,無(wú)需用戶指明如何轉(zhuǎn)換的稱為自動(dòng)類型轉(zhuǎn)換(隱式類型轉(zhuǎn)換),需要用戶顯式地指明如何轉(zhuǎn)換的稱為強(qiáng)制類型轉(zhuǎn)換,本文就給大家詳細(xì)介紹一下C++的轉(zhuǎn)換構(gòu)造函數(shù),需要的朋友可以參考下
    2023-09-09
  • C++帶頭雙向循環(huán)鏈表超詳細(xì)解析

    C++帶頭雙向循環(huán)鏈表超詳細(xì)解析

    帶頭雙向循環(huán)鏈表:結(jié)構(gòu)最復(fù)雜,一般用在單獨(dú)存儲(chǔ)數(shù)據(jù)。實(shí)際中使用的鏈表數(shù)據(jù)結(jié)構(gòu),都是帶頭雙向循環(huán)鏈表。另外這個(gè)結(jié)構(gòu)雖然結(jié)構(gòu)復(fù)雜,但是使用代碼實(shí)現(xiàn)以后會(huì)發(fā)現(xiàn)結(jié)構(gòu)會(huì)帶來(lái)很多優(yōu)勢(shì),實(shí)現(xiàn)反而簡(jiǎn)單
    2022-03-03
  • 一起來(lái)了解一下C++中的指針

    一起來(lái)了解一下C++中的指針

    這篇文章主要為大家詳細(xì)介紹了C++的指針,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-02-02
  • 一文帶你搞懂C語(yǔ)言動(dòng)態(tài)內(nèi)存管理

    一文帶你搞懂C語(yǔ)言動(dòng)態(tài)內(nèi)存管理

    動(dòng)態(tài)內(nèi)存是指在堆上分配的內(nèi)存,而靜態(tài)內(nèi)存是指在棧上分配的內(nèi)存。本文將通過(guò)幾個(gè)示例帶大家深入了解一下C語(yǔ)言的動(dòng)態(tài)內(nèi)存管理,需要的可以參考一下
    2022-11-11
  • 利用C語(yǔ)言編寫一個(gè)無(wú)限循環(huán)語(yǔ)句

    利用C語(yǔ)言編寫一個(gè)無(wú)限循環(huán)語(yǔ)句

    這篇文章主要介紹了利用C語(yǔ)言編寫一個(gè)無(wú)限循環(huán)語(yǔ)句問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • C++在成員函數(shù)中使用STL的find_if函數(shù)實(shí)例

    C++在成員函數(shù)中使用STL的find_if函數(shù)實(shí)例

    這篇文章主要介紹了C++在成員函數(shù)中使用STL的find_if函數(shù)實(shí)例,包括了STL中find_if函數(shù)的具體用法及相關(guān)的完整實(shí)例,非常具有參考借鑒價(jià)值,需要的朋友可以參考下
    2014-10-10
  • C語(yǔ)言數(shù)組實(shí)現(xiàn)三子棋應(yīng)用實(shí)例

    C語(yǔ)言數(shù)組實(shí)現(xiàn)三子棋應(yīng)用實(shí)例

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言數(shù)組實(shí)現(xiàn)三子棋應(yīng)用實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 詳解C++編程中用數(shù)組名作函數(shù)參數(shù)的方法

    詳解C++編程中用數(shù)組名作函數(shù)參數(shù)的方法

    這篇文章主要介紹了詳解C++編程中用數(shù)組名作函數(shù)參數(shù)的方法,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-09-09
  • VSCode配置C++環(huán)境的方法步驟(MSVC)

    VSCode配置C++環(huán)境的方法步驟(MSVC)

    這篇文章主要介紹了VSCode配置C++環(huán)境的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Lua和C/C++互相調(diào)用實(shí)例分析

    Lua和C/C++互相調(diào)用實(shí)例分析

    今天小編就為大家分享一篇關(guān)于Lua和C/C++互相調(diào)用實(shí)例分析,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01

最新評(píng)論