1樓:守望相依
你的意bai思是輸入多餘的字元吧?du
1、因為zhi你用scanf輸入dao的字元都是輸入到緩衝區中的,例如
內你定義了乙個只接容受乙個字元的變數ch,但卻輸入了多餘的字元,這種情況會給編譯器造成困擾,因為他並不完全智慧型,通常採用這種方法釋放掉緩衝區內多餘的字元輸入;例如:
2、char ch;
scanf("%c", &ch);//假如你不小心輸入了多個字元//解決方法如下
while (『\n』 != getchar())//這裡的原理一不斷的用getchar讀取緩衝區內的字元,並將其廢棄掉,直到遇到你輸入的回車符(當然也可以是別的輸入結束符);
2樓:水裡風
字串用陣列代替,然後用迴圈語句乙個乙個字母輸進去= =
為什麼在c語言中,用scanf輸入字串時,不需加&
3樓:匿名使用者
舉例:char str[256];
scanf("%s",str);
其中str是陣列名,已經代表陣列的起始位址了,也可以這麼寫:
scanf("%s",&str[0]);
4樓:金色潛鳥
因為字串變數名在 scanf 語句裡 表示指標 (位址)
例如:char s[80];
scanf("%s",s); --- 這裡的s 已是地內址。
當然,寫成容 scanf("%s",&s[0] ); 也可以, &s[0] 是位址。
5樓:匿名使用者
這個問題現在告訴你也聽不明白。。。
C語言,關於scanf控制格式輸入小數的問題
scanf格式控制的完整格式 m l或h 格式字元。格式字元與printf函式中的使用方式相同,以 d o x c s f e,無 u格式 g格式。可以指定輸入資料所佔列寬,系統自動按它擷取所需資料。如 scanf 3d 3d a,b 輸入 123456 系統自動將123賦給a,456賦給b。後的 ...
用C語言求解 刪除字串的字元,用C語言求解 刪除乙個字串的乙個字元
int n maxstring 字串最大長度char n strsrc 原始串char n 1 strdes 目標串char delchar c int i 0 int j 0 for i 0 i n i 上面幾條語句就實現了你的要求。要輸出的話那簡單。int i 0 for i 0 i n 1 i...
用c語言程式設計字元統計輸入文字檔案分別統
include int main else if c else if c 0 c 9 else printf 字母數 d n空格數 d n數字數 d n其他字元 d n letters,space,digit,other return 0 執行效果 printf函式使用注意事項 1 域寬 d 按整型...