初學C語言,關於for迴圈中scanf函式應用的一點小疑問

2021-04-13 01:48:01 字數 1987 閱讀 8281

1樓:匿名使用者

你在輸入第二行按下回車之後,輸入的這行內容就被存在緩衝區裡,scanf就會按指內

定的容輸入格式來讀取這些資料,每遇到空白、回車或者tab就會認為那個資料結束,所以n次迴圈就會讀入n個資料,按上面的理解,如果你輸入的時候是輸入這種

988回車

74回車

。。。這種也是可以的。

c語言for迴圈裡的scanf怎麼用?

2樓:樂跑小子

int i;

int a[10] = ;

for(i = 0; i < 10, i++)for(i = 0; i < 10; i++)這是輸入

數字的,要輸入字母的話,可專以把a[10]定義為char型屬

3樓:匿名使用者

const int max = 30;//這樣不好吧#defin max 30

char name[arraysize][max];

printf("enter number of marks: ");

scanf("%d", &arraysize);

for (i = 0; i < arraysize; i ++)#include

#define max 30

int main(void)

{int i, tmp;

char mark[max][max];

char name[max][max];

printf("enter number of marks: ");

scanf("%d", &tmp);

for (i=0; i

4樓:手機使用者

因為你非copy常有可能每輸bai入一個字元就按了一次du回車,而回車其實也是一個字zhi符。

在 scanf("%c",char[i]);語句後加上一dao句getchar();就可以啦!

如果前面有輸入資料的情況。把getchar();放在 scanf("%c",char[i]);之前。

5樓:東郭遠酈秋

肯定是因為game()函式裡有scanf語句,並且scanf之後沒有處理scanf留下的換行符。

scanf從螢幕是讀取資料時,往往

專不會自動讀掉

屬行尾的換行符(你輸入資料後,肯定會按一個回車的對吧),所以在game函式裡的最後一個scanf結束後,輸入緩衝區裡還一個換行符在裡面,這個時候main函式裡的scanf函式讀到的字元就是那個換行符

解決方法:

在game函式的最後一個scanf函式後面,加上一個gets語句,用來讀掉最後一個換行符即可,當然如果你的輸出裡敲了多個回車,就要執行多句,不懂可以貼上你的game()函式和你上面的輸入,我再告訴你

c語言for迴圈裡輸入陣列元素時關於scanf的問題

6樓:匿名使用者

for(i=0;i<5;++i)

}如果是這種形式的就輸一個數按一次版

回車。權

7樓:匿名使用者

是給二位數字賦值嗎?

在內層迴圈scanf前面加個printf啊printf("data[%d][%d]",i,j);

輸入的值一定要和定義的陣列匹配

8樓:壤駟禮萬橋

gets()會將回車一起讀進字元陣列裡,而scanf("%s")不會讀回車

scanf("%s")會將空格和回車留在輸入流裡,下一次讀取,讀輸入流裡的下一個字元。

你開一下debug除錯看看,就知道了。

c語言關於for迴圈中使用scanf連續輸入的問題or not,求大神看看**。

9樓:聽不清啊

#include

int main()

for(i=0;i

return 0;}

c語言迴圈中如何輸出多個陣列,C語言FOR迴圈幾個陣列不同

c語言輸出陣列時,需要根據陣列下標,或者指標移動進行輸出。所以,一般不會用一內個迴圈容輸出多個陣列,這樣操作不方便,而且降低效率。常規的做法是,在多個迴圈中,各自輸出不同的陣列。示例 如下 include int main include void main int y 5 int z 5 int ...

c語言for迴圈執行步驟,C語言 for迴圈執行步驟

簡單的for迴圈程式如下 for int i 0 i 20 i 執行步驟是 1 i 0 初始化初值 2 進行條件專判斷i是否 20,如果條屬件為真,則繼續執行 3 執行迴圈體的 4 i 變數i自增一次 5 回到第2步,一直迴圈,直到第2步條件為假時,退出迴圈,結束。開啟嗶哩嗶哩,搜尋 詳解c語言之f...

c語言for迴圈問題,c語言 for迴圈問題

你的for迴圈用錯了,for的三個引數第一個是賦初值,第二個是迴圈條件,第三個是增值。你的迴圈條件沒有給,並且就算寫對位子你的條件好像也錯了,按你的意識是大於10就退出,但是你的迴圈條件是 這是 或 也就是滿足一個條件就進行迴圈,當你輸入10的時候大於了1,那麼迴圈就可以進行。所以你應該是用 用 且...