#include<stdio.h>
int main()
{
int i, j;
for(scanf("%d ",&i); i<=10; i++)
printf("%d ",i);
return 0;
}
我是編程世界的初學者,所以請幫我理解爲什麼編譯上面的C代碼時要求輸入兩次。可能有一些邏輯在這裏循環,我可能會錯過。請幫我understand.Thanks提前:)爲什麼下面的C代碼要求輸入兩次?
#include<stdio.h>
int main()
{
int i, j;
for(scanf("%d ",&i); i<=10; i++)
printf("%d ",i);
return 0;
}
我是編程世界的初學者,所以請幫我理解爲什麼編譯上面的C代碼時要求輸入兩次。可能有一些邏輯在這裏循環,我可能會錯過。請幫我understand.Thanks提前:)爲什麼下面的C代碼要求輸入兩次?
感謝..This是一個非常常見的錯誤......現在我知道發生了什麼事......非常感謝您,先生...... :) – user7841468
@ user7841468好:不使用scanf函數在所有。總是輸入在時間線(POSIX'getline',或者實現它自己周圍'fgets'環路)和*然後*分析它(可能使用'sscanf') – o11c
Currencly,你放置的scanf()在for循環中,它要求輸入10次。當從for循環中刪除scanf()時,不會發生這種情況。
'scanf()的'處於初始化for'循環的一部分。它只會運行一次。 – Arkia
'的scanf( 「%d」,&i);'? - >'的scanf( 「%d」,&i);' – BLUEPIXY
所以與空間什麼的。爲什麼它應該再次提示我輸入請說明理由 – user7841468
我不能看到它求回報 –