




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、3.1 3.2 3.3 3.4 C語言語句概述語言語句概述 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出 格式化輸入輸出函數(shù)格式化輸入輸出函數(shù) 順序結(jié)構(gòu)程序設(shè)計舉例順序結(jié)構(gòu)程序設(shè)計舉例 本章主要內(nèi)容本章主要內(nèi)容 第三章第三章 順序結(jié)構(gòu)程序設(shè)計順序結(jié)構(gòu)程序設(shè)計 問題:一年有春夏秋冬四季,按序執(zhí)行,做事亦問題:一年有春夏秋冬四季,按序執(zhí)行,做事亦 有先后順序,那么有先后順序,那么C C語言在編寫程序時可以采語言在編寫程序時可以采 用這樣的順序結(jié)構(gòu)嗎?用這樣的順序結(jié)構(gòu)嗎? 按程序書寫的前后順序依次按序執(zhí)行按程序書寫的前后順序依次按序執(zhí)行。 C C語言同樣提供了這種最簡單的語言同樣提供了這種最簡單的 程序設(shè)計
2、結(jié)構(gòu):順序結(jié)構(gòu)。程序設(shè)計結(jié)構(gòu):順序結(jié)構(gòu)。 本章要點本章要點 本章難點本章難點 n C語言的基本語句語言的基本語句 n 字符輸入輸出函數(shù)字符輸入輸出函數(shù) n 格式化輸入輸出函數(shù)格式化輸入輸出函數(shù) 3-1 C語言語句語言語句 概述概述 C語言語句的概述語言語句的概述 通過前兩二章的學(xué)習(xí)可以看出,一個通過前兩二章的學(xué)習(xí)可以看出,一個C語言語言 程序可以由若干個源程序文件組成,這些源程序程序可以由若干個源程序文件組成,這些源程序 文件可以單獨編譯,經(jīng)連接而形成可執(zhí)行文件。文件可以單獨編譯,經(jīng)連接而形成可執(zhí)行文件。 一個源文件可以由若干個函數(shù)和編譯命令組成。一個源文件可以由若干個函數(shù)和編譯命令組成。 而
3、一個函數(shù)則由數(shù)據(jù)定義和執(zhí)行語句組成。而一個函數(shù)則由數(shù)據(jù)定義和執(zhí)行語句組成。 從上述兩章的示例中可知,程序應(yīng)該包括數(shù)從上述兩章的示例中可知,程序應(yīng)該包括數(shù) 據(jù)描述(由數(shù)據(jù)定義部分來實現(xiàn))和數(shù)據(jù)操作據(jù)描述(由數(shù)據(jù)定義部分來實現(xiàn))和數(shù)據(jù)操作 (由語句來實現(xiàn))。數(shù)據(jù)描述主要定義數(shù)據(jù)結(jié)構(gòu)(由語句來實現(xiàn))。數(shù)據(jù)描述主要定義數(shù)據(jù)結(jié)構(gòu) (用數(shù)據(jù)類型表示)和數(shù)據(jù)初值。數(shù)據(jù)操作的任(用數(shù)據(jù)類型表示)和數(shù)據(jù)初值。數(shù)據(jù)操作的任 務(wù)是對已提供的數(shù)據(jù)進(jìn)行加工,它是通過使用各務(wù)是對已提供的數(shù)據(jù)進(jìn)行加工,它是通過使用各 種語句來實現(xiàn)。種語句來實現(xiàn)。 C語言的語句分類語言的語句分類 根據(jù)功能,根據(jù)功能,C語言的語句可以分為以下
4、語言的語句可以分為以下 幾類。幾類。 簡單語句簡單語句 包括表達(dá)式語句、函數(shù)調(diào)用語句。包括表達(dá)式語句、函數(shù)調(diào)用語句。 空語句空語句 復(fù)合語句復(fù)合語句 流程控制語句流程控制語句 包括結(jié)構(gòu)化語句(條件語句、循環(huán)語句)、包括結(jié)構(gòu)化語句(條件語句、循環(huán)語句)、 非結(jié)構(gòu)化造句和非限定轉(zhuǎn)向語句。非結(jié)構(gòu)化造句和非限定轉(zhuǎn)向語句。 一、簡單語句一、簡單語句 1. 表達(dá)式語句表達(dá)式語句 由一個表達(dá)式加上一個分號構(gòu)成表達(dá)式語由一個表達(dá)式加上一個分號構(gòu)成表達(dá)式語 句。最典型的是賦值表達(dá)式構(gòu)成賦值語句。句。最典型的是賦值表達(dá)式構(gòu)成賦值語句。 例如:例如: a=3 是一個賦值表達(dá)式是一個賦值表達(dá)式 而而 a=3; 則是一
5、條賦值語句則是一條賦值語句 可以看到一個表達(dá)式的最后加上一個分號可以看到一個表達(dá)式的最后加上一個分號 就成了一個語句。一個語句必須在最后出現(xiàn)分就成了一個語句。一個語句必須在最后出現(xiàn)分 號,它是號,它是C語句的結(jié)束標(biāo)志,是語句中不可缺語句的結(jié)束標(biāo)志,是語句中不可缺 少的一部分。少的一部分。 表達(dá)式語句可分為運算符表達(dá)式語句、賦值表達(dá)式語句可分為運算符表達(dá)式語句、賦值 語句,其作用是計算表達(dá)式或改變變量的值。語句,其作用是計算表達(dá)式或改變變量的值。 例:例: 表達(dá)式表達(dá)式 語句語句 i=i+1 i=i+1; i+ i+; x+y x+y; 2. 函數(shù)調(diào)用語句函數(shù)調(diào)用語句 由一次函數(shù)調(diào)用加上一個分號
6、構(gòu)成一個語句。由一次函數(shù)調(diào)用加上一個分號構(gòu)成一個語句。 其作用主要是完成特定的任務(wù)。其作用主要是完成特定的任務(wù)。 函數(shù)調(diào)用語句的一般格式:函數(shù)調(diào)用語句的一般格式: 函數(shù)名函數(shù)名( (參數(shù)列表參數(shù)列表);); 例:例: printf(“Hello!n”); getchar(); clrscr( ); 3. 空語句空語句 其形式為:其形式為: ; 目的:不做任何操作,常用于循環(huán)結(jié)構(gòu)中目的:不做任何操作,常用于循環(huán)結(jié)構(gòu)中 某種滿足條件的需要。如延時的作用或用來某種滿足條件的需要。如延時的作用或用來 作被轉(zhuǎn)向點,或者構(gòu)成空循環(huán)。作被轉(zhuǎn)向點,或者構(gòu)成空循環(huán)。 二、復(fù)合語句二、復(fù)合語句 用一對花括號用一對
7、花括號 把多個語句括起來的語把多個語句括起來的語 句序列就構(gòu)成一個復(fù)合語句。在語法上相當(dāng)句序列就構(gòu)成一個復(fù)合語句。在語法上相當(dāng) 于一條語句。于一條語句。 例:例: i+; j+=i; printf(“%dn”,j); 在在C語言中,一對花括號語言中,一對花括號“ ”不僅可用作函不僅可用作函 數(shù)體的開頭和結(jié)尾的標(biāo)志,也可用作復(fù)合語句的開數(shù)體的開頭和結(jié)尾的標(biāo)志,也可用作復(fù)合語句的開 頭和結(jié)尾的標(biāo)志。程序中,在出現(xiàn)單語句的地方可頭和結(jié)尾的標(biāo)志。程序中,在出現(xiàn)單語句的地方可 以出現(xiàn)復(fù)合語句。用一對花括號把若干語句括起來以出現(xiàn)復(fù)合語句。用一對花括號把若干語句括起來 構(gòu)成一個語句組,一個復(fù)合語句在語法上等
8、同于一構(gòu)成一個語句組,一個復(fù)合語句在語法上等同于一 個單語句,在一對花括號內(nèi)的語句數(shù)量不限。并且個單語句,在一對花括號內(nèi)的語句數(shù)量不限。并且 在復(fù)合語句內(nèi),不僅可以有執(zhí)行語句,還可以有定在復(fù)合語句內(nèi),不僅可以有執(zhí)行語句,還可以有定 義部分,但定義部分應(yīng)該出現(xiàn)在可執(zhí)行語句的前面。義部分,但定義部分應(yīng)該出現(xiàn)在可執(zhí)行語句的前面。 應(yīng)當(dāng)特別注意的是,在復(fù)合語句的花括號應(yīng)當(dāng)特別注意的是,在復(fù)合語句的花括號“”“” 后不能加分號。后不能加分號。 復(fù)合語句在書寫時采用向右縮進(jìn)的方式,復(fù)合語句在書寫時采用向右縮進(jìn)的方式, 其中的多個語句相對于花括號向右縮進(jìn)一個制其中的多個語句相對于花括號向右縮進(jìn)一個制 表位。
9、表位。 n說明語句說明語句 變量定義或說明變量定義或說明 數(shù)據(jù)類型定義數(shù)據(jù)類型定義 函數(shù)聲明等語句函數(shù)聲明等語句 n可執(zhí)行語句:用來向計算機(jī)發(fā)出操作指令??蓤?zhí)行語句:用來向計算機(jī)發(fā)出操作指令。 簡單語句簡單語句 表達(dá)式語句:表達(dá)式語句:表達(dá)式;表達(dá)式;例:例: i+; 函數(shù)調(diào)用語句函數(shù)調(diào)用語句 控制語句控制語句 空語句:只有分號空語句:只有分號“;”組成的語句,程序執(zhí)組成的語句,程序執(zhí) 行時不產(chǎn)生任何動作。行時不產(chǎn)生任何動作。 復(fù)合語句:把多個語句用括號復(fù)合語句:把多個語句用括號“”括起來組成括起來組成 的一個語句的一個語句 1 1)條件判斷語句:)條件判斷語句:ifif語句、語句、switc
10、hswitch語句等語句等 ; 2) 2) 循環(huán)執(zhí)行語句:循環(huán)執(zhí)行語句:do-whiledo-while語句、語句、whilewhile語語 句、句、forfor語句;語句; 3) 3) 轉(zhuǎn)向語句:轉(zhuǎn)向語句:breakbreak語句、語句、gotogoto語句、語句、 continuecontinue語句、語句、returnreturn語句。語句。 C語言中各種語句有:語言中各種語句有: 三、字符輸入輸出函數(shù)三、字符輸入輸出函數(shù) C語言無語言無I/O(輸入輸入/輸出輸出)語句,語句,I/O操作由函數(shù)實現(xiàn)操作由函數(shù)實現(xiàn), 因此應(yīng)通過預(yù)處理命令因此應(yīng)通過預(yù)處理命令 #include ,將輸入,將輸
11、入/輸輸 出的庫函數(shù)包含進(jìn)來,才可以調(diào)用此類函數(shù)。出的庫函數(shù)包含進(jìn)來,才可以調(diào)用此類函數(shù)。 C語言中輸入輸出字符時,除在語言中輸入輸出字符時,除在scanf()函數(shù)中指定函數(shù)中指定 %c格式輸入字符和在格式輸入字符和在printf()函數(shù)中指定函數(shù)中指定%c格式輸出格式輸出 字符外,還可以采用字符外,還可以采用C語言提供的專門的字符輸入輸出語言提供的專門的字符輸入輸出 函數(shù)。函數(shù)。 1. 單個字符的輸出函數(shù)單個字符的輸出函數(shù)putchar()函數(shù)函數(shù) putchar()函數(shù)的格式:函數(shù)的格式: putchar(ch); 其中其中ch可以是一個字符變量或常量,也可以是一可以是一個字符變量或常量,
12、也可以是一 個轉(zhuǎn)義字符。個轉(zhuǎn)義字符。 putchar()函數(shù)的作用:向終端輸出一個字符。函數(shù)的作用:向終端輸出一個字符。 說明說明 putchar()函數(shù)只能用于單個字符的輸出,且一函數(shù)只能用于單個字符的輸出,且一 次只能輸出一個字符。另外,從功能角度來看,次只能輸出一個字符。另外,從功能角度來看, printf()函數(shù)可以完全代替函數(shù)可以完全代替putchar()函數(shù)。函數(shù)。 在程序中使用在程序中使用putchar()函數(shù),務(wù)必牢記:在程函數(shù),務(wù)必牢記:在程 序(或文件)的開頭加上編譯預(yù)處理命令(也稱包含序(或文件)的開頭加上編譯預(yù)處理命令(也稱包含 命令),即:命令),即: #includ
13、e stdio.h 或或 #include 表示要使用的函數(shù),包含在標(biāo)準(zhǔn)輸入輸出(表示要使用的函數(shù),包含在標(biāo)準(zhǔn)輸入輸出(stdio) 頭文件(頭文件(.h)中。中。(注意注意#號與號與include之間不要留空格)之間不要留空格) 舉例:舉例: 例例3-1 putchar() 函數(shù)的格式和使用方法。函數(shù)的格式和使用方法。 #include stdio.h /*編譯預(yù)處理命令:文件包含編譯預(yù)處理命令:文件包含*/ void main() char ch1=N, ch2=E, ch3=W; putchar(ch1); putchar(ch2); putchar(ch3);/*輸出輸出*/ putc
14、har(n); putchar(ch1); putchar(n); /*輸出輸出ch1的值,并換行的值,并換行*/ putchar(E); putchar(n);/*輸出字符輸出字符E,并換行并換行*/ putchar(ch3); putchar(n); 程序運行結(jié)果如下:程序運行結(jié)果如下: NEW N E W 2. 單個字符的輸入函數(shù)單個字符的輸入函數(shù)getchar()函數(shù)函數(shù) getchar()函數(shù)的格式:函數(shù)的格式: getchar(); getchar()函數(shù)的作用:從系統(tǒng)隱含的輸入設(shè)備函數(shù)的作用:從系統(tǒng)隱含的輸入設(shè)備 (如鍵盤)輸入一個字符。另外,從功能角度來看,(如鍵盤)輸入一個字
15、符。另外,從功能角度來看, scanf()函數(shù)可以完全代替函數(shù)可以完全代替getchar()函數(shù)。函數(shù)。 說明說明: getchar()函數(shù)只能用于函數(shù)只能用于單個字符的輸入單個字符的輸入,一次輸,一次輸 入一個字符。入一個字符。 程序中要使用程序中要使用getchar()函數(shù),必須在程序(或文函數(shù),必須在程序(或文 件)的開頭加上編譯預(yù)處理命令,即:件)的開頭加上編譯預(yù)處理命令,即: #include stdio.h 或或 #include 舉例舉例: 例例3-2 說明說明getchar()函數(shù)的格式和作用。函數(shù)的格式和作用。 #include stdio.h/*文件包含文件包含*/ voi
16、d main() char ch; printf(Please input two character: ); ch=getchar();/*輸入輸入1個字符并賦給個字符并賦給ch */ putchar(ch);putchar(n); putchar(getchar(); /*輸入一個字符并輸出輸入一個字符并輸出*/ putchar(n); 程序運行情況如下:程序運行情況如下: Please input two characters: ab a b 格式格式: : putcharputchar( ( chch ) ) 參數(shù)參數(shù): : chch為一個字符常量、變量或一個轉(zhuǎn)義字符為一個字符常量、變
17、量或一個轉(zhuǎn)義字符 功能:把字符功能:把字符chch輸出到顯示器上輸出到顯示器上 返返回回值:正常,為顯示的代碼值;出錯,為值:正常,為顯示的代碼值;出錯,為EOF(-1)EOF(-1) 字符輸出函數(shù)字符輸出函數(shù) 3.2 3.2 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出 #include #include main()main() char char chch=B;=B; putchar(chputchar(ch); /); /* *輸出變量的值字符輸出變量的值字符B B* */ / putchar(nputchar(n); /); /* *輸出一個換行符輸出一個換行符* */ / putchar(
18、Bputchar(B); /); /* *直接輸出字符直接輸出字符B B* */ / putchar(nputchar(n); /); /* *輸出一個換行符輸出一個換行符* */ / putchar(0 x42); / putchar(0 x42); /* *使用使用ASCIIASCII值輸出字符值輸出字符B B* */ / putchar(nputchar(n); /); /* *輸出一個換行符輸出一個換行符* */ / 運行結(jié)果:運行結(jié)果:B B B B B B 例3-3 格式格式: :getchargetchar( )( ) 功能:從鍵盤讀一字符功能:從鍵盤讀一字符 返返回回值:正常,
19、返回讀取的代碼值;出錯值:正常,返回讀取的代碼值;出錯, ,返回返回EOF(-1)EOF(-1) #include #include main()main() char c; char c; c= c=getchargetchar(); (); putchar(cputchar(c);); 運行結(jié)果:運行結(jié)果: 字符輸入函數(shù) 例3-4 3-3 格式化輸入格式化輸入/輸出函數(shù)輸出函數(shù) 為了讓計算機(jī)處理各種數(shù)據(jù),首先就應(yīng)該把源為了讓計算機(jī)處理各種數(shù)據(jù),首先就應(yīng)該把源 數(shù)據(jù)輸入到計算機(jī)中;計算機(jī)處理結(jié)束后,再將數(shù)據(jù)輸入到計算機(jī)中;計算機(jī)處理結(jié)束后,再將 目標(biāo)數(shù)據(jù)信息以人能夠識別的方式輸出。目標(biāo)數(shù)據(jù)信
20、息以人能夠識別的方式輸出。C語言中語言中 的輸入輸出操作,是由的輸入輸出操作,是由C語言編譯系統(tǒng)提供的庫函語言編譯系統(tǒng)提供的庫函 數(shù)來實現(xiàn)。數(shù)來實現(xiàn)。 一、格式化輸出函數(shù)一、格式化輸出函數(shù)printf printf函數(shù)是函數(shù)是C語言提供的標(biāo)準(zhǔn)輸出函數(shù),語言提供的標(biāo)準(zhǔn)輸出函數(shù), printf()函數(shù)的作用是向計算機(jī)系統(tǒng)默認(rèn)的輸出設(shè)函數(shù)的作用是向計算機(jī)系統(tǒng)默認(rèn)的輸出設(shè) 備(一般指終端或顯示器)輸出一個或多個任意備(一般指終端或顯示器)輸出一個或多個任意 類型的數(shù)據(jù)。類型的數(shù)據(jù)。 1. printf()函數(shù)的一般格式函數(shù)的一般格式 printf()函數(shù)的一般格式如下:函數(shù)的一般格式如下: print
21、fprintf(“(“格式字符串格式字符串” ” ,輸出項表,輸出項表); 例例3-5 已知圓半徑已知圓半徑radius=1.5,求圓周長和圓面積。求圓周長和圓面積。 #include void main() float radius,length,area,pi=3.1415926; radius=1.5; length=2*pi*radius;/*求圓周長求圓周長*/ area=pi*radius*radius; /*求圓面積求圓面積*/ printf(“radius=%f n”,radius);/*輸出圓半徑輸出圓半徑*/ /*輸出圓周長、面積輸出圓周長、面積*/ printf(“l(fā)en
22、gth=%7.2f ,area=%7.2f n”,length,area); 程序運行結(jié)果如下:程序運行結(jié)果如下: radius=1.500000 length= 9.42,area= 7.07 通過上例可以看出,調(diào)用通過上例可以看出,調(diào)用printf( )函數(shù)輸出數(shù)據(jù)時,函數(shù)輸出數(shù)據(jù)時, 其輸出的格式是由其輸出的格式是由printf()函數(shù)中雙號內(nèi)的格式字符串來說函數(shù)中雙號內(nèi)的格式字符串來說 明的,每個格式說明都必須用明的,每個格式說明都必須用“%”開頭,以一個格式字開頭,以一個格式字 符作為結(jié)束,在此之間可以根據(jù)需要插入符作為結(jié)束,在此之間可以根據(jù)需要插入“寬度說明寬度說明”、 左對齊符號
23、左對齊符號“-”、前導(dǎo)零號、前導(dǎo)零號“0”等。等。 格式:格式:printfprintf(“(“格式控制串格式控制串”,輸出表,輸出表列列) ) 功能:按指定格式向顯示器輸出數(shù)據(jù)功能:按指定格式向顯示器輸出數(shù)據(jù) 返返回回值:正常,返回輸出字節(jié)數(shù);出錯,返回值:正常,返回輸出字節(jié)數(shù);出錯,返回EOF(-1)EOF(-1) 輸出表輸出表列列:要輸出的數(shù)據(jù)(可以沒有,多:要輸出的數(shù)據(jù)(可以沒有,多 個時以個時以“,”分隔)分隔) 格式控制串:包含兩種信息格式控制串:包含兩種信息 格式說明:格式說明: %修飾符修飾符格式字符格式字符,用于指,用于指 定輸出格式定輸出格式 普通字符或轉(zhuǎn)義序列:原樣輸出普
24、通字符或轉(zhuǎn)義序列:原樣輸出 格式字符格式字符 格式輸出函數(shù)格式輸出函數(shù) d,i x,X o u c s e,E f g % 十六進(jìn)制無符號整數(shù)十六進(jìn)制無符號整數(shù) 不帶符號十進(jìn)制整數(shù)不帶符號十進(jìn)制整數(shù) 十進(jìn)制整數(shù)十進(jìn)制整數(shù) 指數(shù)形式浮點小數(shù)指數(shù)形式浮點小數(shù) 單一字符單一字符 字符串字符串 八進(jìn)制無符號整數(shù)八進(jìn)制無符號整數(shù) 小數(shù)形式浮點小數(shù)小數(shù)形式浮點小數(shù) e e和和f f中較短一種中較短一種 百分號本身百分號本身 int a=567;printf ( “%d”,a); int a=255;printf(“%x”,a); int a=65;printf(“%o”,a); int a=567;pri
25、ntf(“%u”,a); char a=65;printf(“%c”,a); printf(“%s”,“ABC”); float a=567.789;printf(“%e”,a); float a=567.789;printf(“%f”,a); float a=567.789;printf(“%g”,a); printf(“%”); 567 ff 101 567 A ABC 5.677890e+02 567.789000 567.789 % 說明說明 格式字符要用小寫格式字符要用小寫 格式字符與輸出項個數(shù)應(yīng)相同,按先后順序一一對應(yīng)格式字符與輸出項個數(shù)應(yīng)相同,按先后順序一一對應(yīng) 輸出轉(zhuǎn)換輸出轉(zhuǎn)換
26、:格式字符與輸出項類型不一致格式字符與輸出項類型不一致,自動按指定格自動按指定格 式輸出式輸出 例例 main()main() unsigned unsigned intint u=65535; u=65535; printf(”uprintf(”u=%dn,u);=%dn,u); 輸出結(jié)果:輸出結(jié)果: u=65535 /u=65535 /* *VCVC環(huán)境下環(huán)境下* */ / u=-1 u=-1 / /* *TCTC環(huán)境下環(huán)境下* */ / 例例 intint a=3,b=4; a=3,b=4; printf(“%dprintf(“%d %dn”,a,b); %dn”,a,b); print
27、f(“aprintf(“a=%d , b=%=%d , b=%dn”,a,bdn”,a,b);); 例例 intint a=3,b=4; a=3,b=4; printf(“%dprintf(“%d %dn”,a,b); %dn”,a,b); printf(“aprintf(“a=%d , b=%dn”,a,b);=%d , b=%dn”,a,b); 輸出結(jié)果輸出結(jié)果: 3 4: 3 4 a=3, b=4 a=3, b=4 11 11 11 11 11 11 11 1165535 格式字符格式字符 附加格式說明符(修飾符)附加格式說明符(修飾符) .n 對實數(shù)對實數(shù),指定小數(shù)點后位數(shù)指定小數(shù)點后
28、位數(shù)(四舍五入四舍五入) 對字符串對字符串,指定實際輸出位數(shù)指定實際輸出位數(shù) 修飾符修飾符功功 能能 m 輸出數(shù)據(jù)域?qū)捿敵鰯?shù)據(jù)域?qū)?數(shù)據(jù)長度數(shù)據(jù)長度m,左補(bǔ)空格左補(bǔ)空格;否則按實際輸出否則按實際輸出 輸出數(shù)據(jù)在域內(nèi)左對齊(缺省右對齊輸出數(shù)據(jù)在域內(nèi)左對齊(缺省右對齊) )- 指定在有符號數(shù)指定在有符號數(shù)的正數(shù)前顯示正號的正數(shù)前顯示正號(+)(+) + 輸出數(shù)值時指定左面不使用的空位置自動填輸出數(shù)值時指定左面不使用的空位置自動填0 0 0 在八進(jìn)制和十六進(jìn)制數(shù)前顯示前導(dǎo)在八進(jìn)制和十六進(jìn)制數(shù)前顯示前導(dǎo)0 0,0 0 x x# 在在d,o,x,ud,o,x,u前,指定輸出精度為前,指定輸出精度為lon
29、glong型型 在在e,f,ge,f,g前,指定輸出精度為前,指定輸出精度為doubledouble型型 l 例例 int a=1234; float f=123.456; char ch=a; printf(“%8d,%2dn”,a,a); printf(“%f,%8f,%8.1f,%.2f,%.2en”,f,f,f,f,f); printf(“%3cn”,ch); 運行運行 1234,1234 結(jié)果:結(jié)果: 123.456000,123.456000, 123.5,123.46,1.23e+02 a 例例 #include void main() static char a=Hello,w
30、orld!; printf(%sn%15sn%10.5sn%2.5sn%.3sn,a,a,a,a,a); 運行結(jié)果:運行結(jié)果:Hello,world! Hello,world! Hello Hello Hel 格式修飾符 m和n的應(yīng) 用舉例 例例 int a=1234; float f=123.456; static char c=“Hello,world!”; printf(“%8d,%-8dn”,a,a); printf(“%10.2f,%-10.1fn”,f,f); printf(“%10.5s,%-10.3sn”,c,c); 運行結(jié)果:運行結(jié)果: 1234,1234 123.46,12
31、3.5 Hello,Hel 格式修飾符格式修飾符“-”的應(yīng)用舉例的應(yīng)用舉例 例例 int a=1234; float f=123.456; printf(“%08dn”,a); printf(“%010.2fn”,f); printf(“%0+8dn”,a); printf(“0+10.2fn”,f); 例例 int a=123; printf(“%o,%#o,%X,%#Xn”,a,a,a,a); 例例 long a=65536; printf(“%d,%8ldn”,a, a); 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 /00001234
32、 /0000123.46 /000+1234 /000+123.56 /173,0173,7B,0X7B /65536, 65536 格式修飾符格式修飾符“0、+”的應(yīng)用舉例的應(yīng)用舉例 格式修飾符格式修飾符“#”的應(yīng)用舉例的應(yīng)用舉例 格式修飾符格式修飾符“l(fā)”的應(yīng)用舉例的應(yīng)用舉例 2. 格式字符串的作用格式字符串的作用 “格式字符串格式字符串”也稱也稱“轉(zhuǎn)換控制字符串轉(zhuǎn)換控制字符串”, 可以包含三種字符:可以包含三種字符: (1)格式指示符。格式指示符的一般形式如下:)格式指示符。格式指示符的一般形式如下: %標(biāo)志標(biāo)志寬度寬度.精度精度F|N|h|l類型類型 常用的類型字符如教材常用的類型字符
33、如教材P39P39頁表頁表3-13-1所示。所示。 表表3-1 3-1 printfprintf( )( )的基本格式碼的基本格式碼 格式碼格式碼輸出說明輸出說明舉舉 例例輸出結(jié)果輸出結(jié)果 d/i帶符號十進(jìn)制定點格式帶符號十進(jìn)制定點格式int a=975311;printf(“%d”,a);975310 u無符號十進(jìn)制定點格式無符號十進(jìn)制定點格式int a=975311;printf(“%u”,a);975310 o無符號八進(jìn)制定點格式無符號八進(jìn)制定點格式int a=975311;printf(“%o”,a);3560717 x/X無符號十六進(jìn)制定點格式無符號十六進(jìn)制定點格式int a=975
34、311;printf(“%x”,a);ee1cf c字符字符int a=68;printf(“%c”,a);D s字符串字符串char s=”abcde”; printf(“%s”,s);abcde f小數(shù)形式十進(jìn)制小數(shù)形式十進(jìn)制double a=123.456;printf(%f,a);123.456000 e/E科學(xué)記數(shù)法科學(xué)記數(shù)法double a=123.456;printf(%E,a);1.234560E+002 g/Gf和和e中短者,不印無效中短者,不印無效0double a=123.456;printf(%G,a);123.456 p輸出地址,格式由實現(xiàn)定義輸出地址,格式由實現(xiàn)定義
35、double a=123.456;printf(%p,0012FF74(a的地址)的地址) %printf(%);% 輸出不同類型的數(shù)據(jù),要使用不同的類型轉(zhuǎn)換輸出不同類型的數(shù)據(jù),要使用不同的類型轉(zhuǎn)換 字符。字符。 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符d以帶符號的十進(jìn)制整數(shù)形以帶符號的十進(jìn)制整數(shù)形 式輸出。式輸出。 d 以帶符號的十進(jìn)制形式輸出整數(shù)(正數(shù)不輸出符號)以帶符號的十進(jìn)制形式輸出整數(shù)(正數(shù)不輸出符號) o 以以8進(jìn)制無符號形式輸出整數(shù)(不輸出前導(dǎo)符進(jìn)制無符號形式輸出整數(shù)(不輸出前導(dǎo)符O) x(X) 以以16進(jìn)制無符號形式輸出整數(shù)(不輸出前導(dǎo)符進(jìn)制無符號形式輸出整數(shù)(不輸出前導(dǎo)符Ox) u 以無符號
36、以無符號10進(jìn)制形式輸出整數(shù)進(jìn)制形式輸出整數(shù) c 以字符形式輸出一個字符以字符形式輸出一個字符 s 輸出字符串輸出字符串 f 以小數(shù)形式輸出單、雙精度數(shù),隱含輸出以小數(shù)形式輸出單、雙精度數(shù),隱含輸出6位小數(shù)位小數(shù) e(E) 以標(biāo)準(zhǔn)指數(shù)形式輸出單、雙精度數(shù),小數(shù)位數(shù)為以標(biāo)準(zhǔn)指數(shù)形式輸出單、雙精度數(shù),小數(shù)位數(shù)為6位位 g(G) 選用選用%f或或%e格式中輸出寬度較短的一種格式格式中輸出寬度較短的一種格式 % 百分號百分號 printfprintf格式字符格式字符 例例3-6 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符 d 的使用。的使用。 #include void main() int n1=123; long
37、n2=123456; /*用用4種不同格式,輸出種不同格式,輸出int型變量型變量n1的值的值*/ printf(n1=%d,n1=%5d,n1=%-5d,n1=%2dn,n1,n1,n1,n1); /*用用3種不同格式,輸出種不同格式,輸出long型變量型變量n2的值的值*/ printf(n2=%ld,n2=%8ld,n2=%5ldn,n2,n2,n2); printf(n1=%ldn,n1); 程序運行結(jié)果如下:程序運行結(jié)果如下: n1=123,n1=123,n1=123,n1=123 n2=123456,n2=123456,n2=123456 n1=16908411 對于整數(shù),還可用八
38、進(jìn)制無符號形式(對于整數(shù),還可用八進(jìn)制無符號形式(%o) (注意注意:這里的這里的%o是小寫字母是小寫字母o)輸出或以十六)輸出或以十六 進(jìn)制無符號形式(進(jìn)制無符號形式(%x)輸出。對于輸出。對于unsigned型數(shù)型數(shù) 據(jù),也可用據(jù),也可用%u格式符以無符號十進(jìn)制形式輸出。格式符以無符號十進(jìn)制形式輸出。 所謂無符號形式是指,不論正數(shù)還是負(fù)數(shù),所謂無符號形式是指,不論正數(shù)還是負(fù)數(shù), 系統(tǒng)一律當(dāng)作無符號整數(shù)來輸出。系統(tǒng)一律當(dāng)作無符號整數(shù)來輸出。 例如:例如: printfprintf( (%d,%o,%x,%un%d,%o,%x,%un,-1,-1,-1,-1);,-1,-1,-1,-1); 顯
39、示結(jié)果為:顯示結(jié)果為: -1,37777777777,ffffffff,4294967295-1,37777777777,ffffffff,4294967295 注意注意: 在在TCTC下其結(jié)果為:下其結(jié)果為:-1,177777,ffff,65535-1,177777,ffff,65535 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符ff以小數(shù)形式、按系統(tǒng)默認(rèn)的以小數(shù)形式、按系統(tǒng)默認(rèn)的 寬度,輸出單精度和雙精度實數(shù)。寬度,輸出單精度和雙精度實數(shù)。 例例3-7 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符 f 的使用。的使用。 #include void main( ) float f=123.456; double d1,d2; d
40、1=1111111111111.111111111; d2=2222222222222.222222222; printf(%f,%12f,%12.2f,%-12.2f,%.2fn,f,f,f,f,f); printf(d1+d2=%fn,d1+d2); 程序運行結(jié)果如下:程序運行結(jié)果如下: 123.456001,123.456001,123.46,123.46 ,123.46 d1+d2=3333333333333.333010 本 例 程 序 的 輸 出 結(jié) 果 中 , 數(shù) 據(jù)本 例 程 序 的 輸 出 結(jié) 果 中 , 數(shù) 據(jù) 1 2 3 . 4 5 6 0 0 1 和和 33333333
41、33333.333010中的中的001和和010都是無意義的,因為都是無意義的,因為 它們超出了有效數(shù)字的范圍。它們超出了有效數(shù)字的范圍。 對于實數(shù),也可使用格式符對于實數(shù),也可使用格式符%e,以標(biāo)準(zhǔn)指數(shù)形式輸出:以標(biāo)準(zhǔn)指數(shù)形式輸出: 尾數(shù)中的整數(shù)部分大于等于尾數(shù)中的整數(shù)部分大于等于1、小于、小于10,小數(shù)點占一位,尾,小數(shù)點占一位,尾 數(shù)中的小數(shù)部分占數(shù)中的小數(shù)部分占5位;指數(shù)部分占位;指數(shù)部分占4位(如位(如e-03),),其中其中e 占一位,指數(shù)符號占一位,指數(shù)占占一位,指數(shù)符號占一位,指數(shù)占2位,共計位,共計11位。位。 也可使用格式符也可使用格式符%g,讓系統(tǒng)根據(jù)數(shù)值的大小,自動選擇
42、讓系統(tǒng)根據(jù)數(shù)值的大小,自動選擇 %f或或%e格式、且不輸出無意義的零。格式、且不輸出無意義的零。 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符cc輸出一個字符(只占一列寬輸出一個字符(只占一列寬 度)。度)。 例例3-8 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符 c 的使用。的使用。 #include void main() char c=A; int i=65; printf(c=%c,%5c,%dn,c,c,c); printf(i=%d,%c,i,i); 程序運行結(jié)果如下:程序運行結(jié)果如下: c=A,A,65 i=65,A 需要強(qiáng)調(diào)的是:在需要強(qiáng)調(diào)的是:在C語言中,整數(shù)可以用字符形式輸出,語言中,整數(shù)可以用字符形式輸出,
43、字符數(shù)據(jù)也可以用整數(shù)形式輸出。字符數(shù)據(jù)也可以用整數(shù)形式輸出。將整數(shù)用字符形式輸出將整數(shù)用字符形式輸出 時,系統(tǒng)首先求該數(shù)與時,系統(tǒng)首先求該數(shù)與256的余數(shù),然后將余數(shù)作為的余數(shù),然后將余數(shù)作為ASCII 碼,轉(zhuǎn)換成相應(yīng)的字符輸出。碼,轉(zhuǎn)換成相應(yīng)的字符輸出。 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符ss輸出一個字符串。輸出一個字符串。 例例3-9 類型轉(zhuǎn)換字符類型轉(zhuǎn)換字符 s 的使用。的使用。 #include void main() printf(%s,%5s,%10s,Internet,Internet,Internet); printf(%10.5s,%-10.5s,%4.5sn,Internet,Int
44、ernet,Internet); 程序運行結(jié)果如下:程序運行結(jié)果如下: Internet,Internet,InternetInter,Inter ,Inter 注意:注意:系統(tǒng)輸出字符和字符串時,不輸出單引號和雙引號。系統(tǒng)輸出字符和字符串時,不輸出單引號和雙引號。 使用說明使用說明 printf()可以輸出常量、變量和表達(dá)式的值。但格可以輸出常量、變量和表達(dá)式的值。但格 式控制中的格式說明符,必須按從左到右的順序,與式控制中的格式說明符,必須按從左到右的順序,與 輸出項表中的每個數(shù)據(jù)一一對應(yīng),否則出錯。輸出項表中的每個數(shù)據(jù)一一對應(yīng),否則出錯。 例如,例如,printf(str=%s, f=%
45、d, i=%fn, Internet, 1.0 / 2.0, 3 + 5, CHINA);是錯誤的。是錯誤的。 格式字符格式字符x、e、g可以用小寫字母,也可以用大寫可以用小寫字母,也可以用大寫 字母。使用大寫字母時,輸出數(shù)據(jù)中包含的字母也大字母。使用大寫字母時,輸出數(shù)據(jù)中包含的字母也大 寫。除了寫。除了x、e、g格式字符外,其它格式字符必須用小格式字符外,其它格式字符必須用小 寫字母。寫字母。 例如,例如,%f不能寫成不能寫成%F。 )格式字符緊跟在格式字符緊跟在“%”后面就作為格式字符,后面就作為格式字符, 否則將作為普通字符使用(原樣輸出)。否則將作為普通字符使用(原樣輸出)。 例如,例
46、如,“printf(”c=%c, f=%fn“, c, f);”中的第一個中的第一個c 和和f,都是普通字符。都是普通字符。 (2)轉(zhuǎn)義字符轉(zhuǎn)義字符 printf()函數(shù)中的函數(shù)中的n就是轉(zhuǎn)義字符,輸出時產(chǎn)生一個就是轉(zhuǎn)義字符,輸出時產(chǎn)生一個 “換行換行”操作。操作。 (3)普通字符普通字符除格式指示符和轉(zhuǎn)義字符之外的其它字除格式指示符和轉(zhuǎn)義字符之外的其它字 符。格式字符串中的普通字符,原樣輸出。符。格式字符串中的普通字符,原樣輸出。 例如:例如: printf(radius=%fn, radius);語句中的語句中的radius=, printf(length=%7.2f,area=%7.2f
47、n, length,area);語句中的語句中的 length=、area=等都是普通字符。等都是普通字符。 (4)寬度(長度修飾符)寬度(長度修飾符) 長度修飾符加在長度修飾符加在%和格式字符之間,對于長整型數(shù)一定和格式字符之間,對于長整型數(shù)一定 要加要加l(long);h可用于短整型可用于短整型(short)或無符號短整型數(shù)的輸或無符號短整型數(shù)的輸 出。出。 (5)精度(輸出數(shù)據(jù)所占的寬度)精度(輸出數(shù)據(jù)所占的寬度) 當(dāng)使用當(dāng)使用%d、%c、%f、%e、格式說明時,輸出數(shù)據(jù)格式說明時,輸出數(shù)據(jù) 所占的寬度由系統(tǒng)決定(通常取數(shù)據(jù)本身的寬度,不加空所占的寬度由系統(tǒng)決定(通常取數(shù)據(jù)本身的寬度,不
48、加空 格),并采用右對齊的形式。也可以用以下的方法來控制格),并采用右對齊的形式。也可以用以下的方法來控制 輸出數(shù)據(jù)所占的寬度。輸出數(shù)據(jù)所占的寬度。 在在%與格式字符之間插入一個整數(shù)來指定輸出的寬度,與格式字符之間插入一個整數(shù)來指定輸出的寬度, 但注意不能用變量。如果指定的輸出寬度不夠,并不影響但注意不能用變量。如果指定的輸出寬度不夠,并不影響 數(shù)據(jù)的完整輸出,系統(tǒng)會代之以隱含的輸出寬度;如果指數(shù)據(jù)的完整輸出,系統(tǒng)會代之以隱含的輸出寬度;如果指 定的寬度多于數(shù)據(jù)實際所需寬度,數(shù)據(jù)右對齊,左邊補(bǔ)以定的寬度多于數(shù)據(jù)實際所需寬度,數(shù)據(jù)右對齊,左邊補(bǔ)以 空格??崭?。 例如:例如: 輸出語句輸出語句 輸
49、出結(jié)果輸出結(jié)果 printf(“%dn”,42); 42 printf(“%5dn”,42); 42 printf(“%fn”,123.45); 123.450000 printf(“%12fn”,123.45); 123.450000 printf(“%5fn”,123.45); 123.450000 對于對于float或或double類型的實型數(shù)可以用類型的實型數(shù)可以用“%m.nf”的形式的形式 在指定寬度的同時來指定小數(shù)位的位數(shù),其中,在指定寬度的同時來指定小數(shù)位的位數(shù),其中,m和和n均均 為整數(shù),為整數(shù),m用以指定輸出數(shù)據(jù)總的所占寬度,用以指定輸出數(shù)據(jù)總的所占寬度,n用以指定用以指定
50、小數(shù)的位數(shù),即精度。小數(shù)的位數(shù),即精度。 也可以用也可以用“%.mf”的形式來指定小數(shù)位的位數(shù),這時輸?shù)男问絹碇付ㄐ?shù)位的位數(shù),這時輸 出數(shù)據(jù)的寬度由系統(tǒng)決定。若指定出數(shù)據(jù)的寬度由系統(tǒng)決定。若指定“%.0f”,則不輸出小則不輸出小 數(shù)點和小數(shù)部分。數(shù)點和小數(shù)部分。 例如:例如: 輸出語句輸出語句 輸出結(jié)果輸出結(jié)果 printf(“%7.2fn”,123.5678); 123.57 printf(“%.2fn”,123.5678); 123.57 printf(“%.0fn”,123.5678); 124 (6)標(biāo)志標(biāo)志: 用以指定輸出數(shù)據(jù)的對齊方式。用以指定輸出數(shù)據(jù)的對齊方式。 (7)處理其他
51、類型的修飾說明符處理其他類型的修飾說明符 3.輸出項表輸出項表 輸出項表是可選的。如果要輸出的數(shù)據(jù)不止輸出項表是可選的。如果要輸出的數(shù)據(jù)不止1個,相鄰個,相鄰 2個數(shù)據(jù)之間用逗號分開。下面的個數(shù)據(jù)之間用逗號分開。下面的printf()函數(shù)都是合法的:函數(shù)都是合法的: (1)printf(I am a student.n); (2)printf(%d,3+2); (3)printf(a=%f b=%5dn, a, a+3); 必須強(qiáng)調(diào):必須強(qiáng)調(diào):“格式字符串格式字符串”中的格式指示符,必須與中的格式指示符,必須與“輸輸 出項表出項表”中、輸出項的數(shù)據(jù)類型一致,否則會引起輸出錯中、輸出項的數(shù)據(jù)類型
52、一致,否則會引起輸出錯 誤。誤。 二、格式化輸入二、格式化輸入scanf()函數(shù)函數(shù) 在程序中給計算機(jī)提供數(shù)據(jù),可以用賦在程序中給計算機(jī)提供數(shù)據(jù),可以用賦 值語句,也可以用輸入函數(shù)。在值語句,也可以用輸入函數(shù)。在C語言中,語言中, 可使用可使用scanf()函數(shù),通過鍵盤輸入,給計算函數(shù),通過鍵盤輸入,給計算 機(jī)同時提供一個或多個任意的數(shù)據(jù)。機(jī)同時提供一個或多個任意的數(shù)據(jù)。 1. scanf()函數(shù)的一般格式函數(shù)的一般格式 scanfscanf(“(“格式字符串格式字符串”, ”, 輸入項首地址輸入項首地址 表表);); 函數(shù)功能:用來從外部輸入設(shè)備向計算機(jī)主函數(shù)功能:用來從外部輸入設(shè)備向計算
53、機(jī)主 機(jī)輸入數(shù)據(jù)。機(jī)輸入數(shù)據(jù)。 舉例:舉例: 例例3-10 已知圓柱體的底半徑已知圓柱體的底半徑radius=1.5,高高h(yuǎn)igh=2.0, 求其體積。求其體積。 #include void main() float radius=1.5, high=2.0, pi=3.14159, vol; vol=pi*radius*radius*high; /*求體積求體積*/ printf(“vol=%7.2fn”,vol); /*輸出求出的體積輸出求出的體積*/ 上例中圓柱體的底半徑上例中圓柱體的底半徑radius和高和高h(yuǎn)igh均在編均在編 輯程序時就已經(jīng)固定,若需計算底半徑和高為其輯程序時就已經(jīng)
54、固定,若需計算底半徑和高為其 他值的圓柱體的體積時,則需要重新修改程序,他值的圓柱體的體積時,則需要重新修改程序, 所以這種數(shù)據(jù)的輸入方式使得程序不通用。如果所以這種數(shù)據(jù)的輸入方式使得程序不通用。如果 程序改用格式輸入函數(shù),則可以改變這種不足。程序改用格式輸入函數(shù),則可以改變這種不足。 格式輸入函數(shù)格式輸入函數(shù) 格式格式: : scanfscanf(“(“格式控制串格式控制串”,地址,地址列列表)表) 功能:按指定格式從鍵盤讀入數(shù)據(jù),存入地址功能:按指定格式從鍵盤讀入數(shù)據(jù),存入地址列列表指定的表指定的 存儲單元中存儲單元中, ,并按回車鍵結(jié)束并按回車鍵結(jié)束 返返回回值:正常,返回輸入數(shù)據(jù)個數(shù)值
55、:正常,返回輸入數(shù)據(jù)個數(shù) 地址表:變量的地址,常用取地址運算符地址表:變量的地址,常用取地址運算符); 輸入:輸入:10 10 則則 a=10a=10 例例 scanf(“%x”,); 輸入:輸入:11 11 則則 a=17a=17 附加格式說明符(修飾符)附加格式說明符(修飾符) l l 修飾符修飾符 功功 能能 h h m m * * 用于用于d,o,xd,o,x前,指定輸入為前,指定輸入為shortshort型整數(shù)型整數(shù) 用于用于d,o,xd,o,x前,指定輸入為前,指定輸入為longlong型整數(shù)型整數(shù) 用于用于e,fe,f前,指定輸入為前,指定輸入為doubledouble型實數(shù)型實
56、數(shù) 指定輸入數(shù)據(jù)寬度,遇空格或不可轉(zhuǎn)換字符則結(jié)束指定輸入數(shù)據(jù)寬度,遇空格或不可轉(zhuǎn)換字符則結(jié)束 抑制符,指定輸入項讀入后不賦給變量抑制符,指定輸入項讀入后不賦給變量 例例 scanf(“%4d%2d%2d”,scanf(“%4d%2d%2d”, 輸入輸入 19991015 19991015 則則19991999yyyy, 10 , 10 mm, 15 mm, 15 dddd 例例 scanf(“%3d%scanf(“%3d%* *4d%f”,4d%f”, 輸入輸入 12345678765.43 12345678765.43 則則123123k, 8765.43k, 8765.43f f 例例 s
57、canf(“%2dscanf(“%2d % %* *3d3d %2d”,%2d”, 輸入輸入 12 12 345345 6767 則則1212a, 67a, 67b b 例例 scanf(“%3c%2c”,scanf(“%3c%2c”, 輸入輸入 abcdeabcde 則則aac1, d c1, d c2c2 輸入分隔符的指定輸入分隔符的指定 一般以空格、一般以空格、TAB或回車鍵作為分隔符或回車鍵作為分隔符 其它字符做分隔符:格式串中兩個格式符間其它字符做分隔符:格式串中兩個格式符間 字符字符 例例 scanf(“%d%o%x”,); printf(“aprintf(“a=%d,b=%d,c
58、=%dn”,a,b,c);=%d,b=%d,c=%dn”,a,b,c); 輸入輸入 123 123 123 123 123 123 輸出輸出 a=123,b=83,c=291a=123,b=83,c=291 例例 scanf(“%d:%d:%d”,); 輸入輸入 12:30:45 12:30:45 則則12 12 h, 30 h, 30 m, 45 m, 45 s s 例例 scanf(“%d,%d”, ; 輸入輸入 a=12,b=24,c=36 a=12,b=24,c=36 說明:說明: 用用“%c”格式符時,空格和轉(zhuǎn)義字符作為有效字符輸格式符時,空格和轉(zhuǎn)義字符作為有效字符輸 入入 如如 s
59、canf(“%c%c%c”,scanf(“%c%c%c”, 若輸入若輸入a a b b c c 則則a ac1, c1, c2, b c2, b c3c3 輸入數(shù)據(jù)時,遇以下情況認(rèn)為該數(shù)據(jù)結(jié)束:輸入數(shù)據(jù)時,遇以下情況認(rèn)為該數(shù)據(jù)結(jié)束: 遇空格、遇空格、TAB、或回車或回車 遇寬度結(jié)束遇寬度結(jié)束 遇非法輸入遇非法輸入 如如 scanf(“%d%c%f”,); 若輸入若輸入12341234a123o.26 a123o.26 則則 1234 1234 a, a a, a b, 123 b, 123 c c 輸入函數(shù)留下的輸入函數(shù)留下的“垃圾垃圾”: 例例 intint x; x; char char
60、chch; ; scanf(“%d”,); chch= =getchargetchar();(); printf(“xprintf(“x=%=%d,chd,ch=%=%dn”,x,chdn”,x,ch);); 執(zhí)行:執(zhí)行:123123 輸出:輸出:x=123,ch=10 x=123,ch=10 例例 intint x; x; char char chch; ; scanf(“%d”,); scanf(“%c”,); printf(“xprintf(“x=%=%d,chd,ch=%=%dn”,x,chdn”,x,ch);); 執(zhí)行:執(zhí)行:123123 輸出:輸出:x=123,ch=10 x=12
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 培養(yǎng)跨行業(yè)技能的重要性計劃
- 七年級下冊《幾何圖形與圖文信息問題》課件與練習(xí)
- 2025年氣體摻混設(shè)備項目建議書
- 2025年中文信息處理平臺項目發(fā)展計劃
- 2025年衛(wèi)星數(shù)據(jù)采集系統(tǒng)項目發(fā)展計劃
- 2025年EMI屏蔽材料項目發(fā)展計劃
- 冷鏈物流溫度監(jiān)控實施細(xì)節(jié)
- 電影制作與發(fā)行合作框架
- 2025年活性白土項目建議書
- 案場物業(yè)經(jīng)理年終工作總結(jié)
- 北師大版五年級下冊數(shù)學(xué)早讀課所背知識點
- 實驗室儀器設(shè)備驗收單
- 特殊教育概論第二版PPT完整全套教學(xué)課件
- 高教社高職國際英語 進(jìn)階綜合教程 第2冊 PPT課件高職國際英語進(jìn)階教程第2 冊unit1課文原文和譯文
- 病理科各項制度匯編樣本
- 費用通用報銷單
- PFMEA-沖壓過程模板
- 高中體育足球教學(xué)教案 全冊
- 計算機(jī)視覺PPT完整全套教學(xué)課件
- 第五章-公眾責(zé)任保險課件
- 口內(nèi)數(shù)字化印模
評論
0/150
提交評論