為什麼我的c語言程式會跳過一條輸入語句呢

2021-12-19 13:18:30 字數 847 閱讀 3208

1樓:犁俠

沒看懂問題是什麼,不過有個問題是b=getchar();後面應該加個getchar();

因為輸入的字元為:輸入字元+回車字元,所以接下一次b=getchar()會錯誤,會多執行一次,把問題描述準確點吧。。

2樓:

老兄,是這樣的,你的語句中有輸入字元型資料或著字串的,如果連續輸入兩個比如:

scanf("%c",&a);

scanf("%c",&b);

執行的時候你如果輸入了 r回車,s回車,也就是輸入字元s後按了回車,然後輸入字元s 輸入回車,此時變數 b並不能夠接受你輸入的s,而是接受了回車符號,所以造成好象有個輸入語句沒有執行一樣.

所以你把你的程式中,連續的接受字元或字串的語句後面都加上個 getchar(),用來接受你的那個回車就沒有問題了,源程式我不在幫你該了,你自己加上吧.

3樓:羿妙糜慧俊

它把你的回車鍵也接收了當一個字元

4樓:元彩銀惜雪

在此句之前加一句flush();//清除緩衝區中的內容

。。。。。。。。。。。

5樓:叢勇雀月朗

奇怪!我用vc++

6.0和vs2005編譯一切正常啊,lz是用什麼編譯的??????

6樓:瑞菱谷春冬

具體延時程式可能需要呼叫作業系統api,如windows的sleep

c語言每條語句執行的時間不一樣,可以看看解釋成的彙編**

7樓:主得存

你看一看程式語句的順序有沒有錯誤~~~括號什麼的要加準確~

C語言程式問題,我的c語言程式有什麼問題?

fun x,y,1 求每一行的最小值放進y裡面 fun x,y,0 求每一行的最大值放進y裡面 這個應該是判斷條件有問題,那個判斷形式應該是?前後返回的是判斷條件為真的時候的值,後面返回的是判斷條件不成立的時候的值,你這個寫法根本沒有改變flag的值,因為根本就沒有做賦值的操作。我的c語言程式有什麼...

C語言標頭檔案都是什麼程式程式設計的?會C語言了就會編標頭檔案了嗎

1全部其實寫一個c語言程式可以完全不用標頭檔案。對 include指令,編譯過程中只是在預處理階段把包含的檔案以文字形式完全替換到 include所在的那一行而已。由此可以看出,標頭檔案內容也是編譯器 在預處理之後 編譯的,如果自己在原始檔裡面寫標頭檔案的內容,可以不用 include。學會c語言就...

C語言程式第一行為什麼會輸出9 1,最後一行為什麼會輸出

第一行輸出9就不用說了,關鍵是為毛輸出1.巨集定義就是文字替換,s a 也就是3 9 5 邏輯判斷左結合,3 9為真,故結果為1 1 5為真,故輸出1 同理,往下判斷 3 9,真,結果1,1 5,真,結果1 c語言程式,為什麼每一行輸出最後一位會出現個0呢?printf 2d n 修改為printf...