下面介紹幾種常用的輸入輸出方法
因爲ACM
新人對於ACM
題目中處理輸入輸出存在一些疑惑,於是在這裏記錄幾種常用的輸入輸出方法。
知道輸入數據組數n
scanf("%d",&n);
while(n--){
//這裏處理每一組輸入.然後直接按格式輸出.
}
沒有數據總數,以EOF結束
//C
while(scanf("%d%d",&a,&b)!=EOF){
//處理每一組數據,並輸出.
}
while(scanf("%d%d",&a,&b)==1){
//處理每一組數據,並輸出
}
在Windows下,輸入完畢後先按Enter鍵,再按Ctrl+Z鍵,最後再按Enter鍵,即可結束輸入。
在Linux下,輸入完畢後按Ctrl+D鍵即可結束輸入。
C++
while(cin>>a>>b){
//處理每一組數據,並輸出
}
以0或-1結束的輸入
C
while(scanf("%d",&n), n!=0) {
}
C++
while(cin>>n && n!=0){
}
輸入是一整行的字符串,即以換行符(enter)爲輸入結束標誌
gets()函數不僅比scanf簡潔,輸入的字符串中有空格也可以直接輸入,不用像scanf() 那樣要定義多個字符數組。
C
char buf[20];
gets(buf);
C++
string buf;
getline(cin,buf);
char buf[255];
cin.getline(buf,255);