-
通常有兩種方法可以做到這一點:
1 在進入之前商定參賽作品的數量。 例如,首先輸入總計,然後輸入總計數或合計組的資料。
2 同意輸入結束標記。
這是最常用的。 例如,使用空格、換行符或 eof 作為結束標記。
或者同意非法資料的輸入結束。
-
1. 您可以使用EOF來判斷輸入是否結束。 scanf() 函式有乙個返回值,在其返回值中成功讀取的資料個數,沒有讀取任何資料,返回 0,如果發生錯誤,返回函式是讀取函式之一,fscanf() 用於讀取資料檔案等。 fscanf() 在遇到檔案終止符時返回 EOF。
2. 例如:while(scanf("%d",&n)!=eof);
-
一般使用 scanner in = new scanner(; 獲取控制台輸入並確定控制台是否為輸入。
例如,以下 ** 表示始終檢查控制台的輸入數字,然後列印。 在這種情況下,通常可以按 CTRL+Z 推出控制台輸入。
while (
int n = ;
此外,還可以人為地確定輸入是否結束,例如獲取輸入字串,確定是否為換行符(或其他指定字元或字串等)來結束輸入。
在一些 ACM 問題中,比如您的問題,您通常會被要求輸入乙個數字來描述後續輸入的數量,該數字可以作為判斷輸入結束的依據。
-
看看你是怎麼讀進去的。
通常,回車符會將資料從鍵盤緩衝區閃爍到輸入流中,如果不繼續讀取,則結束。
如果迴圈從 stdin 讀取到失去謹慎,那麼。
Ctrl+Z 結束。
如果仔細閱讀文件,則會出現錯誤或文件末尾已關閉。
-
看看你的編譯器,我使用 code::blocks 用 Ctrl+D 完成鍵入。
-
在 Windows 環境中,可以使用檔案末尾的 Enter、Ctrl+Z、Enter 鍵進入。
-
首先,我真的不知道你想用這個程式做什麼? 初始 prech 值為 '0';因此,不可能輸入if(prech=='f')while(cin>>currch),這是乙個永久的真值,這意味著它不會跳出迴圈。 是時候讓我花點時間了,我不知道你想完成什麼功能所以不知道在哪裡換網路,但至少我可以跳出來。
#include
using namespace std;
int main()
cout<<"number of \"ff\":\t"
使用 scanf 和 printf 函式時,請新增 include。 其中 scanf() 是格式輸入函式,printf() 是格式輸出函式。 >>>More