『壹』 在c語言中怎樣實現等幾秒鍾在執行下一個程序

用sleep函數,貌似在windows.h中。
用for(i = 0; i < 1000; i++);不行,計算機每秒可以進行上千萬,甚至上億次運算,才1000次運算哪裡能夠消耗1s...

『貳』 C語言程序運行計時

使用time()函數。它在頭文件time.h中
具體使用方法如下:
time_t a,b;//time_t是表示時間的結構體,你可以在time.h中找到它的原型。
a=time(NULL);//表示獲取當前的機器時間。
代碼
b=time(NULL);//表示獲取當前的機器時間。
a是代碼段執行前的時間,b是代碼段執行後的時間(單位是秒),那麼b-a當然是代碼段的執行時間了。輸出時,以長整型輸出時間。
希望這個解答可以幫到你。

『叄』 C語言main調用函數a並運行5秒然後切換函數b運行5秒,以此重復

兩種情況:

  1. a函數或者b函數或者a、b函數在5秒內執行不完,這種情況,最好是使用多線程或者多進程;創建2個線程或者2個進程,讓a函數在一個進程(線程)執行,b函數在另外一個進程(線程)執行,5秒後調度另一個進程(線程)執行;

  2. a,b在5秒內都能執行完成,那就在一個循環裡面:先獲取執行前的機器時間,加5秒,執行完函數,再次獲取機器時間,和原機器時間加5秒,作對比,大於或者等於了,就執行另外一個函數。

『肆』 用c語言模擬一個數字時鍾,要求延時一秒運行

如果你要按樓上那種用sleep的方法模擬時鍾的話,誤差很大的,你可以實時對照著系統時間可以下就知道了,超過兩分鍾時間誤差差3-4秒不成問題,如果你對時間准確性不要求的話,只是僅僅模擬的話那倒還湊合用!否則那你必須這樣做:用sleep延時刷新並獲取系統時間來顯示

#include <afx.h>
#include <stdio.h>

int main()
{

while(true)
{
CTime ti=CTime::GetCurrentTime();
CString s_time;
s_time = ti.Format("%H:%M:%S");
printf("%s",s_time);
Sleep(500);
system("cls");

}
return 0;
}

『伍』 C語言中 有什麼指令 可以滿足 等待數秒 再執行下一行

原型:extern void sleep(unsigned int sec);
用法:#include <dos.h>
功能:短暫延時
說明:延時sec秒
舉例:

// sleep.c
#include

main() {
int c;

clrscr();
printf(" Hello, world!");

sleep(1);

clrscr();
printf(" Hi, guys");

getchar();
return 0;
}

原型:extern void delay(unsigned int msec);
用法:#include <dos.h>
功能:短暫延時
說明:延時msec*4毫秒
舉例:

// delay.c
#include

main()
{
int c;

clrscr();
printf(" Hello, world!");

delay(250); // 250*4=1000msec=1sec

clrscr();
printf(" Hi, guys");

getchar();
return 0;
}

wait(等待子進程中斷或結束)
相關函數
waitpid,fork
表頭文件
#include<sys/types.h>
#include<sys/wait.h>
定義函數
pid_t wait (int * status);
函數說明
wait()會暫時停止目前進程的執行,直到有信號來到或子進程結束。如果在調用wait()時子進程已經結束,則wait()會立即返回子進程結束狀態值。子進程的結束狀態值會由參數status 返回,而子進程的進程識別碼也會一起返回。如果不在意結束狀態值,則參數status可以設成NULL。子進程的結束狀態值請參考waitpid()。
返回值
如果執行成功則返回子進程識別碼(PID),如果有錯誤發生則返回-1。失敗原因存於errno中。

『陸』 我想用c語言編程,每0.01秒執行一次一個段語句,請問怎麼寫要詳細的

這是不可能的,設置WM_TIMER消息最短的時間為17分之1秒

『柒』 C語言問題:延遲的代碼是什麼例如暫停一秒後再運行

我看C函數的書好像是sleep(n);n是以秒為單位的;
delay(n);n是以毫秒為單位的;
應該是sleep(1)或者是delay(1000);
不過這個好像是只能在編譯器的環境下才能執行;
雙擊生成的exe文件好像就不能執行了,到底是什麼原因我弄了很長時間也沒搞清楚;我的老師們也不知道是怎麼回事!

『捌』 c語言暫停幾秒比連續運行代碼省電嗎

這個是會省一點電的。
但是裡面的單位是毫秒,而不是秒。
關於sleep()函數在windows系統和linux系統下是兩個不同的函數,差別較大,但功能是相同的,都是將進程掛起一段時間。 windows系統下函數名為Sleep(),其函數原型為: #include <windows.h> 函數使用頭文件 void Sleep(DWORD dwMilliseconds); 參數為毫秒 參考代碼: #include <windows.h> //win頭文件 #include<stdio.h> int main() { int i; printf("你"); fflush(stdout); //贊制刷新緩存,輸出顯示 for( i=0;i<10;i++ ) { Sleep(1000); /* windows 使用Sleep,參數為毫秒 */ printf("."); fflush(stdout);//贊制刷新緩存,輸出顯示 } printf("好\n"); /*輸出「你」和「好」之間會間隔10秒,並輸出10個點*/ return 0; } linux系統下函數名為sleep(),其函數原型為: #include <unistd.h> 函數使用頭文件 unsigned int sleep(unsigned int seconds);參數為毫秒 (如果需要更精確可以用usleep,單位為微秒) 修改上面的代碼,以適應linux系統 #include <unistd.h> //1、linux 頭文件 #include<stdio.h> int main() { int i; printf("你"); fflush(stdout);//贊制刷新緩存,輸出顯示 for( i=0;i<10;i++ ) { sleep(1); /*2、linux 使用sleep,參數為秒*/ printf("."); fflush(stdout);//贊制刷新緩存,輸出顯示 } printf("好\n"); /*輸出「你」和「好」之間會間隔10秒,並輸出10個點*/ return 0; } 注意: 1.在VC中使用帶上頭文件#include <windows.h>,在Linux下,gcc編譯器中,使用的頭文件因gcc版本的不同而不同#include <unistd.h> 2.在VC中,Sleep中的第一個英文字元為大寫的"S" ,在linux下不要大寫,在標准C中是sleep, 不要大寫,簡單的說VC用Sleep, 別的一律使用sleep。 3.在VC中,Sleep()裡面的單位,是以毫秒為單位,所以如果想讓函數滯留1秒的話,應該是Sleep(1000); 在Linux下,sleep()裡面的單位是秒,而不是毫秒。 ======================== delay()是循環等待,該進程還在運行,佔用處理器。 sleep()不同,它會被掛起,把處理器讓給其他的進程,所以會省一點電。

『玖』 C語言秒的轉換

根據輸入的秒數,轉換成相應的時,分,秒數據輸出過程為:定義變數h,m,s來存儲轉換結果定義seconds變數,接收用戶輸入得到小時數:h=seconds/3600;去除小時數:seconds%=3600; 得到分鍾數:m=seconds/60;得到秒數:s=seconds%60;輸出結果參考代碼:#includeint main(){ int h,m,s,seconds; printf("input sec: ");scanf("%d", &seconds ); h=seconds/3600; seconds %= 3600 ; m=seconds/60; s=seconds%60; printf("%d:%d:%d\n", h,m,s ); return 0;}運行結果:input sec: 145674:2:47

『拾』 用c語言每秒輸出一次

#include<stdio.h>
#include<windows.h>//此處是必要的頭文件
intmain(intargc,char*argv[])
{
inti=0;
for(i;i<10;i++)
{
printf("%d",i);
Sleep(1000);//sleep函數對應輸出的延時,1000就是1000Ms,就是1秒的意思。
}
return0;
}
謝謝,純手打,望點贊