ACM 基本得輸入輸出

2022-08-21 17:06:12 字數 988 閱讀 2702

使用c/c++中的輸入輸出函式是完成操作最基本的知識。

一、利用c語言處理輸入和輸出

1、輸入:

在c語言中輸入中stdin指標表示標準的輸入,scanf預設讀取的就是stdin指向的輸入,在acm中我們可能需要不斷的測試,最好將stdin重定向到某乙個檔案,這樣可以方便除錯,使用方法如下。

freopen("iniflename","r",stdin); 該函式依次指定了輸入檔案,操作方式,定向到的檔案指標,這樣在下面的讀取中,可以按照scanf進行讀取。

scanf函式返回的是成功讀取的個數,如果沒有東西讀取返回eof=-1。

讀物字串時可以使用char c = getchar();獲取乙個字元;

讀取多個字元時可使用,char s[43]; gets(s);這樣可以獲得一行;

如果按空格讀取可以使用scanf進行。

2、輸出:

c使用printf函式進行輸出。該函式使用stdout指標作為標準輸出,重定向的方法:

freopen("outfile","w",stdout);

二、c++處理輸入和輸出

1、輸入:

和c語言類似,c++定義了標準物件cin讀物標準輸入,cin >> a >> b; >>操作符其實返回的是乙個物件的引用,但是在while(cin >> n)中,會轉化為void*型別,因此可以用於bool型別的判斷。重定向cin的方法:

ifstream ifile("infilename");

streambuf *strmin_buf = cin.rdbuf(ifile.rdbuf());返回的是乙個streambuf 指標,指向當前讀取的緩衝位址。

2、輸出:

c++使用cout輸出,重定向的方法:

ofstream outfile("outfilename");

streambuf *strmout_buf = cout.rdbuf(outfile.rdbuf());返回的是乙個streambuf 指標,指向當前寫入的緩衝位址。

acm 輸入輸出總結

資料的輸入格式影響判斷迴圈終止的方式,迴圈判定發生在各組資料之間的輸入過程中和組內單個資料的輸入過程中,常見的資料輸入格式有三種 給出輸入規模 首先,輸入乙個整數n,n為輸入規模 然後,輸入n組資料。以特定輸入標誌結束 最後一組輸入為題目中指定的一組特定輸入,標誌輸入的結束。這組輸入一般為一組無意義...

acm 輸入輸出測試

1 巧用 scanf 當沒告訴你輸入幾個時 直接輸入一串數字,以空格分開,換行結束 int a maxn int n char c while scanf d c a n,c c n n 2 當沒告訴你有幾組資料時,只告訴你 每組資料的結束標誌,程式的結束標誌時 要採取順序結構的思想,while 判...

ACM入門之輸入輸出

include stdio.h int main 在開始做 acm時,會面臨乙個輸入輸出資料的問題,acm裡的輸入輸出資料和平時寫的程式不大一樣。下面詳解 acm有關輸入輸出的問題。一 輸入 1 只有一組測試資料,這時候是最簡單的了,請看題目 sdutoj1000。c語言 include stdio...