程式執行期間,從外設接收資訊的操作稱為「輸入」,向外設傳送資訊的操作稱為「輸出」。
本節介紹從鍵盤向程式中的變數輸入資料以及將程式計算的結果輸出到顯示器上的基本操作。
c++中沒有專門的輸入輸出語句,而是通過系統提供的輸入輸出流類來實現。
cin和cout的書寫形式很靈活,如果有多個變數,即使型別不相同,也可以寫在同乙個語句中或者分成若干個語句輸入或輸出。
注意,使用cin和cout必須在程式開頭增加一行:
# include
或者兩行:
# include
using namespace std;
◆1、字元的輸入輸出
cin:用cin為字元變數輸入資料時,輸入的各字元之間可以間隔開也可以無間隔,系統會自動跳過輸入行中的間隔符(包括空格符,製表符,回車符等)。例如:
char c1, c2, c3;則
cin>>c1; //a
cin>>c2>>c3;
執行過程為:
(1) 程式執行到a行時,等待使用者輸入資料;
(2) 若輸入:abc //cr代表回車符
(3) cin分別將字元a、b、c賦給變數c1、c2、c3。
若在第(2)步中輸入:a b c ,則結果一樣。
cin.get():用於提取鍵盤上輸入的所有字元(包括間隔符等),賦給字元變數。並且,cin.get()函式一次只能提取乙個字元的值,其格式為:
cin.get (字元變數);
舉例:設有定義char c1, c2, c3, c4;則下列語句的執行過程是:
cin.get (c1);
cin.get (c2);
cin.get (c3);
cin.get (c4);
程式執行過程中若輸入:
a b//ab間有空格
c則字元′a′、空格、′b′、回車分別賦給變數c1、c2、c3、c4;輸入緩衝區中保留字元′c′和回車符。
注意,cin與cin.get()是有區別的,cin自動跳過分隔符(如空格、回車);cin.get()不會。
字元輸出:字元間無間隔,如需間隔,可在資料間插入間隔符。如′/t′(製表符,自動跳過若干字元位置)、′/n′或endl(表示回車換行,並清空緩衝區)等。
◆2、字串的輸入輸出
舉例:char city[11];
cin.getline(city, 10); //由鍵盤輸入城市名
cout << 「城市名:「 << city << endl;
其中:cin.getline() —— 第1個引數是已經定義的字元陣列名,第2個引數是讀入字元的最多個數(包括字串結束符『/0』)。
【執行結果】:從輸入行中提取最多9個字元(由cin.getline()的第2個引數指明),再加上乙個『/0』字元,輸入到字元陣列city(由cin.getline()的第1個引數指明)。輸出時,字元陣列輸出串結束符前的所有字元。
◆3、十進位制資料的輸入輸出
請看下例:
int i, j;
float x, y;
cout<<」input i, j, x, y:」<>i>>j; //e
cin>>x>>y; //要求輸入十進位制資料
cout<<"i="《程式執行到d行,將輸出提示資訊:
input i, j, x, y:
並停留在e行,等待使用者輸入資料,若輸入:
10 20
4.5 8.6
則程式輸出:
i=10 j=20
x+y=13.1
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 ...