當前位置:首頁 » 編程語言 » 計算火車運行時間用c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

計算火車運行時間用c語言

發布時間: 2023-01-13 18:36:44

1. c語言計算火車運行時間:輸人兩個整數timel和time2, 表示火車的出發時間和到達時間,計算並

把7~9行改為:
x=time2/100-time1/100;
y=time2%100-time1%100;
if(y<0){y+=60; x--;}
printf("......is %d hours %d minutes\n",x,y);

2. C語言計算時間

在C語言中計算時間,可以使用標准庫中的計時函數——clock()。

函數原型:

clock_tclock(void);

其中clock_t是用來保存時間的數據類型,在time.h文件中,可以找到對它的定義:

#ifndef_CLOCK_T_DEFINED
typedeflongclock_t;
#define_CLOCK_T_DEFINED
#endif


很明顯,clock_t是一個長整形數。在time.h文件中,還定義了一個常量CLOCKS_PER_SEC,它用來表示一秒鍾會有多少個時鍾計時單元,其定義如下:

#defineCLOCKS_PER_SEC((clock_t)1000)

可以看到每過千分之一秒(1毫秒),調用clock()函數返回的值就加1。下面舉個例子,可以使用公式clock()/CLOCKS_PER_SEC來計算一個進程自身的運行時間:

voidelapsed_time()
{
printf("Elapsedtime:%usecs. ",clock()/CLOCKS_PER_SEC);
}

當然,也可以用clock函數來計算的機器運行一個循環或者處理其它事件到底花了多少時間:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain(void)
{
longi=10000000L;
clock_tstart,finish;
doubleration;
printf("Timetodo%ldemptyloopsis",i);
start=clock();
while(i--);
finish=clock();
ration=(double)(finish-start)/CLOCKS_PER_SEC;
printf("%fseconds ",ration);
system("pause");
}

3. 計算程序運行時間(C語言)

輸出時,除以CLOCKS_PER_SEC就可以得到實際的秒數了,如:
printf("%f\n", time/CLOCKS_PER_SEC );

4. C語言如何精確計算程序運行時間除clock()函數之外。。。急急急!!!!

如果你要更精確的,就需要使用系統API來獲取了。
windows sdk下面有幾個獲取CPU時鍾的函數,我記得一個gettickcount(),返回開機到調用時的毫秒數(像360之類的軟體的計算系統啟動時間就是調用這個api)可以用來計算運行時間。實際上還有更精確的,我沒有用過(因為毫秒對我就夠用了),所以不記得名字,我搜了一下,給你附了個鏈接。
記得#include <windows.h>
再想到一點,如果你是用linux的話,我就不太熟了……

5. 如何用C++計算火車運行時間 求代碼。。。

按題意,就是記一個開車時間,一個計時器累加,直到停車時停止累加。
計時器就是運行時間。
具體應該是建一個線程來計時。

6. c語言 計算程序運行時間

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

#define N 10000 /*這個數字可以自己改,如果時間太長結果不出來你就改小點*/
void f()
{
int i, j, k;
for ( i = 0; i < N; ++i )
for ( j = 0; j < N; ++j )
for ( k = 0; k < N; ++k )
;
}

int main()
{
clock_t begin, ration;

begin = clock();
f();
ration = clock() - begin;
printf( "函數f()的運行時間大約為:%dms\n", ration*1000/CLOCKS_PER_SEC );
}

7. C語言旅途時間問題

#include <stdio.h>
int main( )
{
int time1, time2, hours, mins;
int h1, m1, h2, m2;
scanf("%d%d", &time1, &time2);
h1 = time1 / 100;
m1 = time1 % 100;
h2 = time2 / 100;
m2 = time2 % 100;
if(m2-m1<0)
{
m2+=60;
h2--;
}
mins = m2 - m1;
hours = h2 - h1;
/*---------*/
printf("The train journey time is %d hrs %d mins.\n", hours, mins);
}

8. 求助!C語言中關於時間差的一題

樓上的加入一個int not(0); 恐怕在C中編譯不通過吧。
----------------------------------------
mins = (time2 % 100) - (time1 % 100);
hours = (time2 / 100) - (time1 / 100);

// Verification
if (mins < 0)
{
mins += 60;
hours -= 1;
}
------------------------------------------

9. c語言的問題 有大神做過火車的發車時間的程序嗎

先取得時間然後再比較當前時間比要小於等於數組里的值。

10. 跪求C語言大神!!兩道題。!!

winXP+VC6.0下測試通過:

#include<stdio.h>
#include<string.h>
void first()
{
//第一題:
int time1,time2;
int time1H,time1M; //記錄時間1的小時,分鍾
int time2H,time2M;//記錄時間2的小時,分鍾
int timeDiff;

//輸入二個時間
printf("Enter time1:\n");
scanf("%d",&time1);
printf("Enter time2:\n");
scanf("%d",&time2);

//將小時和分鍾拆出
time1H=time1/100;
time1M=time1%100;

time2H=time2/100;
time2M=time2%100;

printf("time1 is :%d:%d\n",time1H,time1M);
printf("time2 is :%d:%d\n",time2H,time2M);

//轉成分鍾,然後計算出相差多少分鍾
timeDiff=(time2H*60+time2M)-(time1H*60+time1M) ;

//顯示結果
printf("timeDiff %d minute ,%d:%d\n ",timeDiff,timeDiff/60,timeDiff%60);
}

void second()
{
int num;
int a[4];
int temp;

printf("input num:\n");
scanf("%d",&num);

//把四位數字拆開放好
a[3]=num/1000;
num=num%1000;
a[2]=num/100;
num=num%100;
a[1]=num/10;
a[0]=num%10;

//數字加9,然後除以10 取余
a[3]=(a[3]+9)%10;
a[2]=(a[2]+9)%10;
a[1]=(a[1]+9)%10;
a[0]=(a[0]+9)%10;

//互換:千和十
temp=a[3];
a[3]=a[1];
a[1]=temp;

//互換:百和個
temp=a[2];
a[2]=a[0];
a[0]=temp;

//組合新的數字
num=a[3]*1000+a[2]*100+a[1]*10+a[0];

//顯示結果
printf("new num is :%d\n",num);

}

int main()
{
printf("----------------first----------------\n");
first();
printf("----------------second----------------\n");
second();

return 0;
}