C語言中對使用者輸入的讀取

2021-07-13 03:15:13 字數 1276 閱讀 7009

1樓:匿名使用者

因為你輸入完第一個字元後按了回車鍵,而回車鍵實際上輸入了2個字元,第一個字元被scanf用來確認輸入結束,第2個位元組仍保留在緩衝區內,被第2個scanf讀到了,因此b的值實際上是回車輸入的第2個字元,是個控制字元,不可見.

以後注意了,在scanf("%c",getchar之類輸入字元的語句前,要加fflush(stdin);清空緩衝區.

2樓:想念黃黃

你第一個字元也輸不出來吧

因為你沒有輸出這兩個字元的語句啊

printf("輸入第一個字元:\n");

scanf("%c",&a);

printf("輸入第二個字元:\n");

scanf("%c",&b);

printf("%c",a);

printf("%c",b);

******************************====我不知你說的“用一句話什麼意思”

如果你不想一次次用scanf printf的話 可以這樣子:

char a;

while (scanf("%c",&a)!=eof)//有字元讀入printf("%c\n",a);

3樓:祈拉之祈

程式是一句句執行的

第一個輸出完

它等你輸入a

所以第二個字元輸不出來

你可以輸入一個字元,回車

這樣就有了

4樓:

一樓正解,,你加上那個清除緩衝區函式就好了!

用c語言編寫一個程式,讀入使用者輸入的整數,按八進位制顯示出來

5樓:匿名使用者

很簡單的程式,你找c語言課本看看printf格式字元的介紹%o 以八進位制無符號專形式輸出整數(不輸

屬出前導符號0)

給你一個程式:

#include

void main()

執行結果:

輸入整數n:65

八進位制輸出形式:101

press any key to continue

6樓:匿名使用者

你找c語言課本看看printf格式copy字bai符的介紹%o 以八進位制無符號

du形式輸出整數zhi(不輸出前導符號0)給你一個程式:dao

#include

void main()

執行結果:

輸入整數n:65

八進位制輸出形式:101

c語言中,怎麼用eof結束輸入,C語言中,怎麼用EOF結束輸入

windows 首先在最後一行結束後 此時未換行 輸入enter鍵,新起一行,再輸入ctrl z,再輸入時enter鍵即可。linux 直接按ctrl d快捷鍵 示例 include using namespce std void main int a while cin a 迴圈輸入的 塊 c語言...

c語言中如何依次輸入陣列中元素,C語言中如何依次輸入陣列中元素

include int main int a 17 int i for i 0 i 17 i scanf d a i return 0 函式功能 把格式化的資料寫入某個字串 函式原型 int sprintf char buffer,const char format argument 返回值 字串長...

c語言中應用switch語句程式設計輸入

int n switch n case 1 printf 今天襲是週一 break case 2 printf 今天是週二 break case 3 printf 今天是週三 break case 4 printf 今天是週四 break case 5 printf 今天是週五 break case...