C語言課件:第三章_第1頁
C語言課件:第三章_第2頁
C語言課件:第三章_第3頁
C語言課件:第三章_第4頁
C語言課件:第三章_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、共 23 頁 第 1 1 頁本章學(xué)習(xí)要點本章學(xué)習(xí)要點1.1. 掌握掌握C C語言中輸入輸出數(shù)據(jù)的方法語言中輸入輸出數(shù)據(jù)的方法2.2. 掌握各種格式的使用掌握各種格式的使用共 23 頁 第 2 2 頁1.函數(shù)的基本功能函數(shù)的基本功能 格式:格式:printf(格式控制串,輸出表列)格式控制串,輸出表列) 功能:從標(biāo)準(zhǔn)輸出設(shè)備上,按指定的格式輸出對應(yīng)功能:從標(biāo)準(zhǔn)輸出設(shè)備上,按指定的格式輸出對應(yīng) 的變量。的變量。%d: 以十進制帶符號形式輸出整型數(shù)以十進制帶符號形式輸出整型數(shù)%o:以八進制無符號形式輸出整型數(shù):以八進制無符號形式輸出整型數(shù)%x:以十六進制無符號形式輸出整型數(shù):以十六進制無符號形式輸出

2、整型數(shù)格格式式控控制制串串常用格式符:常用格式符:共 23 頁 第 3 3 頁%u 以十進制以十進制無符號無符號形式輸出整型數(shù)形式輸出整型數(shù)%f:以:以小數(shù)形式小數(shù)形式輸出單、雙精度實型數(shù)輸出單、雙精度實型數(shù)%e: 以以指數(shù)形式指數(shù)形式輸出單、雙精度實型數(shù)輸出單、雙精度實型數(shù)%c: 以以字符形式字符形式輸出一個輸出一個字符字符%s: 以以字符形式字符形式輸出一個輸出一個字符串字符串%ld: 以十進制帶符號形式輸出以十進制帶符號形式輸出長整型數(shù)長整型數(shù)格格式式控控制制串串共 23 頁 第 4 4 頁(2)(2)普通字符:即需要原樣輸出的字符普通字符:即需要原樣輸出的字符。(3)“輸出表列輸出表列

3、”是需要輸出的一些數(shù)據(jù),可以是表達是需要輸出的一些數(shù)據(jù),可以是表達式。式。例例:main( )int a=3, b=4; printf(“a=%d b=%d”,a,b);輸出輸出:a=3 b=4格式說明格式說明(格式字符格式字符)普通字符普通字符輸出表列輸出表列2. 函數(shù)說明函數(shù)說明: (1) 格式說明符格式說明符:由由“%”和格式符組成。和格式符組成。共 23 頁 第 5 5 頁3.格式說明符格式說明符 一般格式一般格式:%-m.nl格式符格式符說明如下說明如下:- 當(dāng)數(shù)據(jù)的寬度小于顯示寬度時當(dāng)數(shù)據(jù)的寬度小于顯示寬度時,數(shù)據(jù)左對齊數(shù)據(jù)左對齊,右方補空格右方補空格.m 輸出數(shù)據(jù)占輸出數(shù)據(jù)占m個

4、字符位,不夠右對齊,左邊填空格。個字符位,不夠右對齊,左邊填空格。n 輸出數(shù)據(jù)有輸出數(shù)據(jù)有n位小數(shù)位小數(shù)m.n 輸出數(shù)據(jù)占輸出數(shù)據(jù)占m列,列, n位小數(shù)位小數(shù)l 用于長整型或雙精度型的數(shù)據(jù)用于長整型或雙精度型的數(shù)據(jù)共 23 頁 第 6 6 頁 對不同類型的數(shù)據(jù)使用不同的格式字符。有以下對不同類型的數(shù)據(jù)使用不同的格式字符。有以下幾種格式字符:幾種格式字符: (1) d格式符格式符: 輸出十進制整數(shù)輸出十進制整數(shù). %d -按整型數(shù)據(jù)的實際長度輸出。按整型數(shù)據(jù)的實際長度輸出。 %md -m為指定的輸出字段的寬度為指定的輸出字段的寬度.若數(shù)據(jù)的位數(shù)小若數(shù)據(jù)的位數(shù)小于于m,則左端補以空格則左端補以空格

5、;若大于若大于m,則按實際位數(shù)輸出。則按實際位數(shù)輸出。 %ld -輸出長整型數(shù)據(jù)輸出長整型數(shù)據(jù).例:int a=1234; printf(“%3d”,a); printf(“%5d”,a);1234 1234實際實際 左補空左補空共 23 頁 第 7 7 頁(2)(2)o o格式符格式符 以八進制數(shù)形式輸出整數(shù)。以八進制數(shù)形式輸出整數(shù)。 將內(nèi)存單元中的各位的值將內(nèi)存單元中的各位的值(0或或1)按八進制形式輸出按八進制形式輸出,輸出的數(shù)值不帶符號輸出的數(shù)值不帶符號,將符號也作為八進制數(shù)的一部分將符號也作為八進制數(shù)的一部分輸出輸出. 例如例如,-1在內(nèi)存單元中在內(nèi)存單元中(以補碼形式存放以補碼形式

6、存放)如下如下: a=-1 int a=-1; printf(“%d,%o”,a,a); 輸出輸出: -1,1777771 1 11 11 11 11 11 11 11 o格式符同格式符同d格式符一格式符一樣,可以輸出長整型數(shù)據(jù),樣,可以輸出長整型數(shù)據(jù),也可以指定字段寬度。也可以指定字段寬度。VC+下共 23 頁 第 8 8 頁(3) x格式符格式符,以十六進制數(shù)形式輸出整數(shù)。以十六進制數(shù)形式輸出整數(shù)。(4) u格式符格式符,以十進制形式輸出無符號型數(shù)據(jù)。以十進制形式輸出無符號型數(shù)據(jù)。 例例 main() unsigned int a=65535; int b=-2; printf(“a=%d

7、,%o,%x,%un”,a,a,a,a); printf(“b=%d,%o,%x,%un”,b,b,b,b); 輸出輸出: a=-1,177777,ffff,65535 b=-2,177776,fffe,65534VC+下共 23 頁 第 9 9 頁(5) c 格式符格式符 輸出一個字符。輸出一個字符。 一個整數(shù)一個整數(shù),只要它的值在只要它的值在0255范圍內(nèi)范圍內(nèi),也可以用字符形也可以用字符形 式輸出。在輸出前式輸出。在輸出前,將該整數(shù)轉(zhuǎn)換成相應(yīng)的將該整數(shù)轉(zhuǎn)換成相應(yīng)的ASCII字字符符;反之反之,一個字符數(shù)據(jù)也可以用整數(shù)形式輸出。一個字符數(shù)據(jù)也可以用整數(shù)形式輸出。例例 main( ) cha

8、r c=a; int i=97; printf(“%c,%dn”,c,c); printf(“%c,%dn”,i,i); 輸出輸出: a,97 a,97共 23 頁 第 1010 頁(6)s格式符格式符 輸出一個字符串。輸出一個字符串。 若不指定字符寬度和對齊方式若不指定字符寬度和對齊方式,則輸出全部字符串則輸出全部字符串. 例如例如: printf(“%s”,”CHINA”) 輸出字符串輸出字符串“CHINA”字符串字符串(不包括雙引號不包括雙引號)。(7) f格式符格式符 以小數(shù)形式輸出實數(shù)以小數(shù)形式輸出實數(shù)(包括單、雙精度包括單、雙精度)。1) %f , 不指定字段寬度不指定字段寬度,由

9、系統(tǒng)自動指定由系統(tǒng)自動指定,使整數(shù)部使整數(shù)部分全部輸出分全部輸出,并輸出并輸出6位小數(shù)。位小數(shù)。2) %m.nf , 指定輸出的數(shù)據(jù)共占指定輸出的數(shù)據(jù)共占m列列,其中有其中有n位小位小數(shù)數(shù).若數(shù)據(jù)長度小于若數(shù)據(jù)長度小于m,則左端補空格。則左端補空格。共 23 頁 第 1111 頁8. e格式格式 以指數(shù)形式輸出實數(shù)。以指數(shù)形式輸出實數(shù)。 1) %e 不指定輸出數(shù)據(jù)所占的寬度和數(shù)字部分小不指定輸出數(shù)據(jù)所占的寬度和數(shù)字部分小數(shù)位數(shù)數(shù)位數(shù),由系統(tǒng)自動指定給出由系統(tǒng)自動指定給出6位小數(shù)位小數(shù),指數(shù)部分占指數(shù)部分占5位位,其中其中“e”占一位占一位,指數(shù)符號占一位指數(shù)符號占一位,指數(shù)占指數(shù)占3位位.數(shù)值

10、按標(biāo)準(zhǔn)化指數(shù)形式輸出數(shù)值按標(biāo)準(zhǔn)化指數(shù)形式輸出.例如例如: printf(“%e”,123.456);輸出輸出:1.234560e+002 e格式輸出的實數(shù)共占格式輸出的實數(shù)共占13列寬度列寬度. 3位位6位位共 23 頁 第 1212 頁1. 1. 格式控制串的控制符號與變量表要一一對應(yīng),格式控制串的控制符號與變量表要一一對應(yīng),即:即:類型相同類型相同,個數(shù)相等個數(shù)相等2. 2. 格式控制符號盡量用小寫字母格式控制符號盡量用小寫字母3. 3. 格式控制符號之外的符號均照原樣顯示格式控制符號之外的符號均照原樣顯示4. 4. 若需顯示百分號,格式為:若需顯示百分號,格式為:%5. 5. 如果實際數(shù)

11、據(jù)所占字符位大于指定的域?qū)?,如果實際數(shù)據(jù)所占字符位大于指定的域?qū)?,按按實際輸出實際輸出共 23 頁 第 1313 頁例例: 若有若有 int a=5,b=8;1.printf(“%d,%d n”,a,b); 輸出:輸出:5,82.printf(“a=%d,b=%dn”,a,b); 輸出輸出為:為: a=5,b= 8 3.printf(“%5d%5dn”,a,b); 輸出輸出為:為: 5 8(5 5之前空之前空4 4個字符位)個字符位)4.printf(“Turbo C”); 輸出:輸出:Turbo C 輸出串輸出串 共 23 頁 第 1414 頁1. 格式:格式: putchar(字符變量)字

12、符變量)2.功能功能 :在標(biāo)準(zhǔn)輸出設(shè)備上,輸出指定的字符:在標(biāo)準(zhǔn)輸出設(shè)備上,輸出指定的字符3.說明說明:* * 一次調(diào)用只能輸出一個字符一次調(diào)用只能輸出一個字符* * 加上分號成為字符輸出語句加上分號成為字符輸出語句* * 使用時在程序開頭用編譯命令使用時在程序開頭用編譯命令#include”stdio.h”編譯預(yù)處理編譯預(yù)處理例例:#include “stdio.h” main( )char a,b,c; a=B;b=O;c=Y; ptchar(a);putchar(b);putchar(c);output:BOY共 23 頁 第 1515 頁一般形式一般形式: scanf(格式控制字符串格

13、式控制字符串, 地址表列地址表列) “格式控制字符串格式控制字符串”的含義同的含義同printf函數(shù)函數(shù), “地址表列地址表列”可以是變量的地址可以是變量的地址,或字符串的首地址或字符串的首地址. 例如例如: int a,b,c; scanf(“%d%d%d”,&a,&b,&c); 輸入數(shù)據(jù)時輸入數(shù)據(jù)時,在兩個數(shù)據(jù)之間以一個或多個在兩個數(shù)據(jù)之間以一個或多個空格空格間間隔隔,也可以用也可以用回車回車鍵、鍵、跳格鍵跳格鍵tab。共 23 頁 第 1616 頁表 3.3 scanf 格式字符格式字符說 明d用來輸入十進制整數(shù)o用來輸入八進制整數(shù)x用來輸入十六進制整數(shù)c用來輸入

14、單個字符s用來輸入字符串,將字符串送到一個字符數(shù)組中,輸入時以非空字符開始,以第一個空白字符結(jié)束f用來輸入實數(shù),可用小數(shù)或指數(shù)形式e與 f 作用相同,e 與 f 可以互相替換lf:輸入雙精度實數(shù)共 23 頁 第 1717 頁說明:說明: * * 輸入時不允許規(guī)定精度,可以指定域?qū)捿斎霑r不允許規(guī)定精度,可以指定域?qū)抜nt a ;scanf(“%3d”,&a); float x; scanf(“%8.2f ”,&x);* * 輸入輸入時,遇下列情況結(jié)束時,遇下列情況結(jié)束* 回車,空格回車,空格* 寬度結(jié)束寬度結(jié)束* 非法輸入非法輸入int k; scanf(“%3d”,&k

15、);輸入:輸入:123456789k為為:123共 23 頁 第 1818 頁* * 標(biāo)準(zhǔn)標(biāo)準(zhǔn)C C在在scanfscanf中不使用中不使用%u%u說明符說明符, ,對對unsignedunsigned型數(shù)型數(shù)據(jù)據(jù), ,以以%d%d或或%o%o、%x%x格式格式輸入。輸入。* * 可以指定輸入數(shù)據(jù)所占列數(shù)可以指定輸入數(shù)據(jù)所占列數(shù), ,系統(tǒng)自動按它截取所系統(tǒng)自動按它截取所需數(shù)據(jù)需數(shù)據(jù). .如如scanf(“%3d%3d”,&a,&b); scanf(“%3d%3d”,&a,&b); 輸入輸入123456123456系統(tǒng)自動將系統(tǒng)自動將123123賦給賦給a,456

16、a,456賦給賦給b b* * scanf scanf 函數(shù)中的函數(shù)中的“格式控制格式控制”后面應(yīng)當(dāng)是后面應(yīng)當(dāng)是變量地變量地址址, ,而不是變量名而不是變量名. .* *除除scanfscanf和和printfprintf以外,使用其余標(biāo)準(zhǔn)庫函數(shù)時,應(yīng)以外,使用其余標(biāo)準(zhǔn)庫函數(shù)時,應(yīng)包含:包含:#include “stdio.h#include “stdio.h”共 23 頁 第 1919 頁main() int a; float b,c; scanf(“%2d%3f%4f”,&a,&b,&c); printf(“a=%d,b=%f,c=%fn”,a,b,c);輸入:輸入

17、:12345678987654321輸出輸出?a=12,b=345.000000,c=6789.000000例例:共 23 頁 第 2020 頁3.2. 2 getchar函數(shù)函數(shù)(字符輸入函數(shù)字符輸入函數(shù))一般形式:一般形式:getchar( ) -沒有參數(shù)沒有參數(shù)功能:從終端輸入一個字符。功能:從終端輸入一個字符。說明:說明:1)只能接受一個字符)只能接受一個字符 2)可以將獲得的字符賦給)可以將獲得的字符賦給int 型或型或char型的變量型的變量 例例 #include”stdio.h” main() char c; c=getchar( ); putchar(c); 運行時鍵入字符運行時鍵入字符a,則其輸出為:則其輸出為: a共 23 頁 第 2121 頁求一元二次方程求一元二次方程 x2+x-2=0 的根。的根。 main()共 23 頁 第 2222

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論