《C語言程式設計》一 2 4 資料的輸出和輸入

2021-09-23 09:35:10 字數 3326 閱讀 8057

c語言中資料的輸出和輸入是通過呼叫函式實現的。scanf()函式實現鍵盤輸入,printf()函式實現螢幕輸出,這兩個函式由系統stdio.h庫函式提供。呼叫scanf()函式和printf()函式實現輸入/輸出時,應根據資料的型別和輸入/輸出的形式,通過格式控制來實現。

1.printf()函式一般格式

printf()函式的一般格式為:

printf(格式控制,輸出表列);

printf()函式的功能是將後面的引數按照指定的格式進行輸出,可以輸出任意型別的多個資料。

1)格式控制是由雙引號括起來的字串,它包含三種資訊:

格式說明:由「%」和格式符組成,如%d,%f等。它的作用是將輸出的資料按照指定的格式輸出。

普通字元:需要原樣輸出的字元。

轉義字元:用於控制輸出。

2)輸出表列是一些要輸出的資料。例如:

語句中用了%f格式符,用來輸出乙個實數。

2.整型輸出

整型資料輸出使用%d格式符,%d用來輸出十進位制整數,正數輸出不帶符號,負數輸出帶負號。d前面還可以加乙個整數,表示資料輸出的最小寬度。

【例2-4】 使用基本格式控制%d輸出整型資料。

/*程式名:prg2-4.c*/

/*格式說明%md的用法*/

#includeint main()

輸出結果為:

-1,   25

125,125

第乙個輸出函式中,用%d格式輸出整數a值,結果為-1;%5d表示輸出資料的最小寬度為5,不夠5位左端用空格補齊。

第二個輸出函式中,對於變數c,%2d規定輸出資料最小寬度為2,實際資料為3位,則突破限制,按照實際位數輸出。

3.實型輸出

%f用來以小數形式輸出單、雙精度的實數,可以像整型資料一樣指定寬度,也可以指定小數字數。

【例2-5】 使用基本格式控制%f輸出實型資料。

/*程式名:prg2-5.c*/

/*格式說明%m.nf的用法*/

#includeint main()

輸出結果為:

123.456001, 123.46

216.527353, 216.53

以%f格式輸出時,預設的小數字數為6位。由於單精度小數的有效數字位數是7位,超過7位就不是準確數字了,所以以%f格式輸出x時結果為123.456001,雙精度小數的有效數字為15~16位,所以以%f格式輸出y時結果為216.527353。%7.2f表示輸出資料最小寬度為7,小數點以後保留2位,所以以%7.2f格式輸出x時結果為123.46,輸出y時結果為216.53,左端補乙個空格。

4.字元型輸出

%c格式符用來輸出乙個字元。如果有乙個整數,值在0~255之間,也可以用字元方式輸出。

【例2-6】 使用基本格式控制%c輸出字元型資料。

/*程式名:prg2-6.c*/

/*格式說明%c的用法*/

#includeint main()

輸出結果為:

a,  a,97

a,65, 65

以%c格式輸出的是字元型資料的字元形式,以%d輸出的是字元的ascii碼。對於整數m,用%c輸出的是該整數對應的字元形式。

除了上面介紹的格式符以外,還有一些其他格式符。printf()函式的格式符含義見表2-4。

1.scanf()函式一般格式

scanf()函式的一般格式如下:

scanf(格式控制,位址表列);
scanf()函式的功能是按照指定的格式輸入資料,可以輸入任意型別的多個資料。

格式控制與printf()函式含義相同,它由若干個格式說明構成,其作用是控制轉換輸入資料的型別。

位址表列由若干個位址構成,它們可以是變數的位址,也可以是字串的首位址。

2.當輸入一串資料時,系統如何區分每個資料

當輸入一串資料時,系統可以按如下方式區分每個資料:

1)根據格式符的含義分隔字元。

scanf("%d%c%f",&a , &b , &c);
輸入資料

120a45.6

則a=120,b=『a』,c=45.6。

2)系統按格式串指定的長度擷取所需的資料。

scanf("%3d%2d",&a , &b);
輸入資料

12345      

則a=123,b=45。

3)用隱含的分隔符。在輸入資料中用空格、換行符或tab分隔資料。

scanf("%d%d%d",&a , &b , &c);

輸入資料

3  4  5
或輸入

3

4  5

則a=3,b=4,c=5。

4)使用顯示分隔符。在格式說明符中還可以有其他字元,在輸入字元時應輸入與這些字元相同的字元。

scanf("%d,%d,%d",&a , &b , &c);
輸入資料

3,4,5

則a=3,b=4,c=5。

如果是

scanf("%d:%d:%d",&a , &b , &c);
輸入時,兩個資料要用「:」分隔,如下所示:

3:4:5
5)%後的「*」附加說明符,用來表示跳過它相應的資料。

scanf("%d,%*d,%d",&a , &b);
如果輸入

3,4,5
則a=3,b=5,第二個資料跳過不賦給任何變數。

scanf()函式的格式符含義見表2-5。

c程式設計 資料的輸入和輸出

老師說,現在同學們程度都差不多,我一定好好學習賺大錢。第三章習題 5.用scanf函式輸入資料,使a 3,b 7,x 8.5,y 71.82,c1 a c2 a 6t 將china用其後面第四個字母代替 include stdio.h intmain include stdio.h intmain ...

輸出 (C語言檔案資料程式設計概念)

輸出 是c語言檔案資料程式設計概念,在c語言檔案資料的輸入輸出中,當呼叫輸出函式把程式中變數的值輸出到外部檔案中時,這種操作稱為 輸出 或 寫 程式設計師們為了便於記憶和理解,通常將 輸出 和 寫 共讀為 寫出。這與別於 讀 即 輸入 讀入fscanf 檔案指標,格式控制字串,輸入項表 fread ...

(一)C語言 資料的輸出printf()函式

一 c語言 資料的輸出printf 函式 資料的輸入和輸出是程式設計中使用最普遍的基本操作。程式執行所需的資料通常要從外部輸入裝置 如鍵盤 檔案 掃瞄器等 輸入,程式的執行結果通常也要輸出到外部裝置 如印表機 顯示器 繪圖儀 檔案等 乙個程式通常缺少不了資料的輸入和輸出,如果沒有輸入,資料的處理只能...