C語言如何使while迴圈兩次,C語言中如何實現while迴圈,執行設定的一段時間,比如5秒

時間 2021-08-30 10:20:03

1樓:潭清安董丁

anf("%c",&a)來接收使用者輸入的乙個字元時,會將回車符也接收下來。c語言在處理時,會將使用者輸入放在鍵盤緩衝區,使用scanf來接收%c時,編譯器從鍵盤緩衝區讀取乙個char字元,但是並不清空後面的字元,所以導致下一次scanf("%c",&a)時,將剩下的回車符先給讀進來,並進行處理了。

要解決這個問題,可以使用getch()或者getche()函式。

但是:getch()介面,接收字元後不會將字元回顯到顯示器,所以使用者看不到自己輸入的字元。

而getche()介面就沒有這個問題,所以應該使用getche()。

2.迴圈計數錯誤,多迴圈一次。

這個你仔細推算一下就出來了。

一般解決這種問題的話,使用do/while迴圈較多,因為do/while迴圈可讀性好一些。

以下是改過以後的**,已經編譯執行確認:

#include

#include

main()

else

break;

}while(1);

if(a=='b')

else

getch();}

2樓:潛淑敏熊壬

每次要求使用者輸入時,可以通過呼叫標準庫函式獲取使用者輸入,如等等,你呼叫幾次,程式就會要求使用者輸入幾次。

例如你這裡分兩次輸入就可以寫成如下形式:

printf("第一次輸入");

scanf("%d",&a);

printf("第二次輸入");

scanf("%d",&b);

c語言中如何實現while迴圈,執行設定的一段時間,比如5秒

3樓:匿名使用者

你是準備隔一段時間執行這個迴圈麼,用sleep,如

while(true)

4樓:匿名使用者

#include

void mysleep(int second)

second 輸入多少就是多少秒了。

5樓:匿名使用者

#include

#include

int main()

return 0;}

6樓:

這個不難,不知道你要的是不是這樣:

unsigned int time=100000;

while(time--);

如果你要延時比較長,time變數要用長整型,

c 語言while迴圈,c語言while的用法

p1 p2 這個是賦值語句,而非比較運算。字元陣列雖然有大小限制,但是指標就不同,即便超過了大小,指標指向陣列越界後的下乙個記憶體單元,並不會發生錯誤 另外,printf s a 函式列印字串,它是在遇到字串結束符的時候才終止輸出,此時a陣列的值已經被賦值為p2所指向的記憶體空間的值。這個程式是錯的...

C語言怎麼退出while迴圈,c語言中while的用法

不不見不念 if條件語句寫錯了 if a 判斷字串相等不能用等號 if strcmp a,0 要這麼寫 while 是乙個迴圈體,退出迴圈體的方法有 1 迴圈體條件 不成立,如 while a 0 當 a 0 的時候,條件 a 0不成立,while 迴圈結束,退出 while 迴圈。2 在迴圈體內使...

關於C語言,本題為什麼for迴圈用了兩次呢,求詳解都是什麼情況下for迴圈需要多次使用啊謝謝

既然你要詳細解釋,我就從題目開始來分析 題目要求函式能幹3件事 1 計算出平均分 2 統計低於平均分的人數 3 把低於平均分的分數儲存在另乙個陣列中 我們來分析一下 首先,要做到這些是就必須遍歷陣列中的每乙個元素,因此迴圈是必須的,而且對於這種迴圈次數已知的問題 陣列元素數為9 我們一般會用for迴...