當我們提到輸入時,這意味著要向程式填充一些資料。輸入可以是以檔案的形式或從命令列中進行。c 語言提供了一系列內建的函式來讀取給定的輸入,並根據需要填充到程式中。
當我們提到輸出時,這意味著要在螢幕上、印表機上或任意檔案中顯示一些資料。c 語言提供了一系列內建的函式來輸出資料到計算機螢幕上和儲存資料到文字檔案或二進位制檔案中。
標準檔案
c 語言把所有的裝置都當作檔案。所以裝置(比如顯示器)被處理的方式與檔案相同。以下三個檔案會在程式執行時自動開啟,以便訪問鍵盤和螢幕。
標準檔案
檔案指標
裝置標準輸入
stdin
鍵盤標準輸出
stdout
螢幕標準錯誤
stderr
您的螢幕
檔案指標是訪問檔案的方式,本節將講解如何從螢幕讀取值以及如何把結果輸出到螢幕上。
c 語言中的 i/o (輸入/輸出) 通常使用 printf() 和 scanf() 兩個函式。
scanf() 函式用於從標準輸入(鍵盤)讀取並格式化, printf() 函式傳送格式化輸出到標準輸出(螢幕)。
#include // 執行 printf() 函式需要該庫
int main()
編譯以上程式,輸出結果為:
菜鳥教程
例項解析:
%d 格式化輸出整數
#include
int main()
編譯以上程式,輸出結果為:
number =5
在 printf() 函式的引號中使用 「%d」 (整型) 來匹配整型變數 testinteger 並輸出到螢幕。
%f 格式化輸出浮點型資料
#include
int main()
getchar() & putchar() 函式
int getchar(void)函式從螢幕讀取下乙個可用的字元,並把它返回為乙個整數。這個函式在同乙個時間內只會讀取乙個單一的字元。您可以在迴圈內使用這個方法,以便從螢幕上讀取多個字元。
int putchar(int c)函式把字元輸出到螢幕上,並返回相同的字元。這個函式在同乙個時間內只會輸出乙個單一的字元。您可以在迴圈內使用這個方法,以便在螢幕上輸出多個字元。
請看下面的例項:
#include
int main( )
當上面的**被編譯和執行時,它會等待您輸入一些文字,當您輸入乙個文字並按下回車鍵時,程式會繼續並只會讀取乙個單一的字元,顯示如下:
$./a.out
enter a
value :runoob
you entered: r
gets() & puts() 函式
char *gets(char *s)函式從 stdin 讀取一行到 s 所指向的緩衝區,直到乙個終止符或 eof。
int puts(const char *s)函式把字串 s 和乙個尾隨的換行符寫入到 stdout。
#include
int main( )
當上面的**被編譯和執行時,它會等待您輸入一些文字,當您輸入乙個文字並按下回車鍵時,程式會繼續並讀取一整行直到該行結束,顯示如下:
$./a.out
enter a
value :runoob
you entered: runoob
scanf() 和 printf() 函式
int scanf(const char *format, …)函式從標準輸入流stdin讀取輸入,並根據提供的 format 來瀏覽輸入。
int printf(const char *format, …)函式把輸出寫入到標準輸出流stdout,並根據提供的格式產生輸出。
format可以是乙個簡單的常量字串,但是您可以分別指定 %s、%d、%c、%f 等來輸出或讀取字串、整數、字元或浮點數。還有許多其他可用的格式選項,可以根據需要使用。如需了解完整的細節,可以檢視這些函式的參考手冊。現在讓我們通過下面這個簡單的例項來加深理解:
#include
int main( )
當上面的**被編譯和執行時,它會等待您輸入一些文字,當您輸入乙個文字並按下回車鍵時,程式會繼續並讀取輸入,顯示如下:
$./a.out
enter a
value :runoob 123
you entered: runoob 123
在這裡,應當指出的是,scanf() 期待輸入的格式與您給出的 %s 和 %d 相同,這意味著您必須提供有效的輸入,比如 「string integer」,如果您提供的是 「string string」 或 「integer integer」,它會被認為是錯誤的輸入。另外,在讀取字串時,只要遇到乙個空格,scanf() 就會停止讀取,所以 「this is test」 對 scanf() 來說是三個字串。 C 輸入輸出
一 標準輸入函式cin 不知道說它是個函式對還是不對,它是代表標準的輸入裝置 鍵盤。他是屬於流的,他的用法和流的用法是一樣的。也就是 cin 變數 小小的說明一下,輸入多個變數可以寫在一行,如 cin x y z 這樣寫不是不允許,而是不好看,如果是不同的變數型別,那就更是沒頭沒腦了。除了你,人家是...
C 輸入輸出
c語言不提供輸入輸出語句,輸入輸出操作有函式來實現。c的標準庫函式中提供了許多輸入輸出函式,如printf scanf 等,使用時需要新增相應的標頭檔案 scanf d num 逗號前為控制語句,後半部分為變數的位址。當中 d是輸入格式控制字串 scanf 函式在接受輸入資料是預設不採集空格,回車,...
C 輸入輸出
c 中的一些常用輸入輸出 include include include include using namespace std void win io 由控制台輸入 void file io 檔案進行輸入 in file.close void file io 2 in file.close in ...