C程式問題。我發現空格竟然可以決定程式的正確與否

2022-04-07 07:25:54 字數 407 閱讀 6548

1樓:

你前面有輸入一個回車符號,存在緩衝區,如果沒空格,answer直接等於回車了

所以sanf後要清空鍵盤緩衝區。

解決辦法:

1.scanf之前 加上fflush(stdin);重新整理緩衝區。

2.c程式設計中建議gets和sscanf函式替代scanfvoid main()

{int a;

char line[100];

printf("give you number:");

gets(line);

sscanf(line, "%d", &a);..

2樓:匿名使用者

scanf格式字元中多餘的字元需要原樣輸入,因此你必須先輸入一個空格,再輸入一個需要的字元

C程序問題,C程式問題

i從0到5 輸出結果應該是123345 函式fun 就是對陣列a從a 2 到a 9 實行資料的後移,例如,a 9 的值傳給a 10 a 8 原來的值傳給a 9 直到a 2 的值傳給a 3 一共是7次 呼叫函式之後,a陣列的資料變成了 通過for迴圈把陣列a中的a 0 到a 5 的值依次輸出來,所以應...

C程式問題,c語言程式猴子偷桃問題

include void main 換行 就是 地一樣空1格 打5個星,第二行空2格 打5個星,第三行空三個 打5個星.首先i 1,滿足i 5進入j迴圈,j 1 1滿足,輸出空格,j 後不滿足迴圈條件,程式跳出j迴圈,進入k迴圈,輸出五個 號和一個換行符 然後i 再進行i迴圈,進入j迴圈時,輸出兩個...

c 的程式問題,一個c 的程式問題,。。。。

其實正確的寫法應當是 for i strlen temp.c str 1 i 0 i 首先,strlen是返回字串的長度,當i strlen時,temp i 應該是結束符,不信你輸兩個字串看看輸出結果,是不是前面多了一個 空格 再次,你寫成 temp 0 只是把temp第一個字母的地址當做引數傳給s...