大學(xué)計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語言)--第3章 順序結(jié)構(gòu)_第1頁
大學(xué)計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語言)--第3章 順序結(jié)構(gòu)_第2頁
大學(xué)計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語言)--第3章 順序結(jié)構(gòu)_第3頁
大學(xué)計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語言)--第3章 順序結(jié)構(gòu)_第4頁
大學(xué)計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語言)--第3章 順序結(jié)構(gòu)_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第第3 3章章 順序結(jié)構(gòu)順序結(jié)構(gòu) 本章內(nèi)容本章內(nèi)容 數(shù)據(jù)的輸入輸出數(shù)據(jù)的輸入輸出 程序舉例程序舉例 C C程序的語句程序的語句1 2 3 說明語句說明語句 說明語句包括說明語句包括變量(或數(shù)組)定義語句和函數(shù)變量(或數(shù)組)定義語句和函數(shù) 聲明語句聲明語句兩種,而最常用的是變量(或數(shù)組)兩種,而最常用的是變量(或數(shù)組) 定義語句,通過變量定義語句確定變量的類型定義語句,通過變量定義語句確定變量的類型 與初值。與初值。 例如:例如: char ch1char ch1,ch2ch2; int xint x,y y,z=1z=1; float afloat a,b b,c c; double d1do

2、uble d1,d2d2; 執(zhí)行語句可分為以下五類執(zhí)行語句可分為以下五類: 1 1、表達(dá)式語句。如:、表達(dá)式語句。如: k=k+1; k=k+1; 為賦值語句為賦值語句 k+1k+1;為表達(dá)式語句為表達(dá)式語句 k+;k+;為自增語句為自增語句 a=(b=5)+(c=3); 2 2、復(fù)合語句。如:、復(fù)合語句。如: z=x+yz=x+y;t=z/100t=z/100; 一個(gè)復(fù)合語句在語法上作為一條語句處理,一個(gè)復(fù)合語句在語法上作為一條語句處理, 在一對(duì)花括號(hào)中的語句數(shù)量不限。在一對(duì)花括號(hào)中的語句數(shù)量不限。 復(fù)合語句花括號(hào)必須配對(duì);右花括號(hào)的后面復(fù)合語句花括號(hào)必須配對(duì);右花括號(hào)的后面 不加分號(hào)不加分

3、號(hào)。 在復(fù)合語句中,不僅可以有執(zhí)行語句,還可在復(fù)合語句中,不僅可以有執(zhí)行語句,還可 以有說明語句以有說明語句. . 如:如: int a=5; b=a*a; 3 3、空語句。、空語句?!埃弧?4 4、函數(shù)調(diào)用語句。如:、函數(shù)調(diào)用語句。如:printf(printf(“* * *bookbook* * *”) ); 5 5、控制語句、控制語句(9(9種種) )。如:。如:ifif語句,語句,forfor語句等語句等 C C語言中沒有提供輸入輸出語句,其輸入輸出操語言中沒有提供輸入輸出語句,其輸入輸出操 作,是通過作,是通過C C語言系統(tǒng)所提供的語言系統(tǒng)所提供的輸入輸出函數(shù)輸入輸出函數(shù) 來來 實(shí)現(xiàn)

4、的。實(shí)現(xiàn)的。 1 1、默認(rèn)的、默認(rèn)的標(biāo)準(zhǔn)輸入輸出設(shè)備是鍵盤和顯示器。標(biāo)準(zhǔn)輸入輸出設(shè)備是鍵盤和顯示器。 2 2、輸入輸出函數(shù)被放在標(biāo)準(zhǔn)的、輸入輸出函數(shù)被放在標(biāo)準(zhǔn)的I/OI/O函數(shù)庫中,庫函數(shù)庫中,庫 中的公用信息存放在頭文件中的公用信息存放在頭文件stdio.hstdio.h中,若要中,若要 使用這些輸入輸出函數(shù),必須在源程序的開使用這些輸入輸出函數(shù),必須在源程序的開 始使用預(yù)處理命令:始使用預(yù)處理命令: #include #include stdio.hstdio.h 格式:格式:getchar( )getchar( ) 功能:從功能:從鍵盤鍵盤上輸入一個(gè)字符。函數(shù)的值就是從上輸入一個(gè)字符。函

5、數(shù)的值就是從 鍵盤上得到的字符。鍵盤上得到的字符。能獲取空格、回車、能獲取空格、回車、 制表符。制表符。 如:如:char ch;char ch; ch=getchar( ); ch=getchar( ); 注意:注意:getchar( )getchar( )只能接收只能接收一個(gè)字符一個(gè)字符,而且只有,而且只有 在用戶敲入回車鍵在用戶敲入回車鍵后,讀入才開始執(zhí)行。后,讀入才開始執(zhí)行。 main() char ch1, ch2; ch1 = getchar(); ch2 = getchar(); printf(%d %dn, ch1, ch2); 輸入:輸入:A 程序的輸入都建有一個(gè)緩沖區(qū),即程

6、序的輸入都建有一個(gè)緩沖區(qū),即 輸入緩沖區(qū)。當(dāng)一次鍵盤輸入結(jié)束輸入緩沖區(qū)。當(dāng)一次鍵盤輸入結(jié)束 時(shí)時(shí),會(huì)將輸入的數(shù)據(jù)存入輸入緩沖區(qū)會(huì)將輸入的數(shù)據(jù)存入輸入緩沖區(qū), getchar()函數(shù)從輸入流緩沖區(qū)中讀函數(shù)從輸入流緩沖區(qū)中讀 取值,而非從鍵盤取值,而非從鍵盤(終端終端)緩沖區(qū)讀取。緩沖區(qū)讀取。 輸入字符輸入字符A后,回車(后,回車(n)會(huì)一起讀)會(huì)一起讀 入輸入流緩沖區(qū)。所以第一次入輸入流緩沖區(qū)。所以第一次 getchar取走字符取走字符A后會(huì)留下字符后會(huì)留下字符n, 第二次第二次getchar直接從緩沖區(qū)中把直接從緩沖區(qū)中把n 取走。取走。 格式:格式: putchar(ch) putchar(

7、ch) 功能:將功能:將chch的值向的值向標(biāo)準(zhǔn)輸出設(shè)備標(biāo)準(zhǔn)輸出設(shè)備輸出。其中輸出。其中chch可可 以是字符型變量以是字符型變量, ,整型變量整型變量, ,字符型常量。字符型常量。 也可以輸出轉(zhuǎn)義字符也可以輸出轉(zhuǎn)義字符 。 例:例: # include “stdio.h ” main ( ) char a, b, c ; a=T; b=e; c=a; putchar (a); putchar (b); putchar (c); 結(jié)果:結(jié)果:Tea 格式:格式: printf (printf (“控制字符串控制字符串”,輸出項(xiàng)列表輸出項(xiàng)列表) ) 功能:功能:按控制字符串按控制字符串規(guī)定的輸出

8、格式,規(guī)定的輸出格式,將輸出項(xiàng)列將輸出項(xiàng)列 表表中的各輸出項(xiàng)的值依次輸出到顯示器上。中的各輸出項(xiàng)的值依次輸出到顯示器上。 其中:其中:控制字符串包括控制字符串包括: 格式說明:格式說明:%m%mn l n l 格式字符格式字符 作用是將輸出的數(shù)據(jù)轉(zhuǎn)換為格式字符規(guī)定的作用是將輸出的數(shù)據(jù)轉(zhuǎn)換為格式字符規(guī)定的 格式,然后輸出。格式,然后輸出。 printf(“%d”,15) 格式字符格式字符意意 義義 d以十進(jìn)制有符號(hào)形式輸出整型數(shù)據(jù)以十進(jìn)制有符號(hào)形式輸出整型數(shù)據(jù) o以八進(jìn)制無符號(hào)形式輸出整型數(shù)據(jù)(不帶前導(dǎo)以八進(jìn)制無符號(hào)形式輸出整型數(shù)據(jù)(不帶前導(dǎo)0) x以十六進(jìn)制無符號(hào)形式輸出整型數(shù)據(jù)(不帶前導(dǎo)以十

9、六進(jìn)制無符號(hào)形式輸出整型數(shù)據(jù)(不帶前導(dǎo)0 x) u以十進(jìn)制無符號(hào)形式輸出整型數(shù)據(jù)以十進(jìn)制無符號(hào)形式輸出整型數(shù)據(jù) c輸出一個(gè)字符輸出一個(gè)字符 s 輸出字符串中的字符,直到遇到輸出字符串中的字符,直到遇到“0”,或者輸出由精度指,或者輸出由精度指 定的字符數(shù)定的字符數(shù) f以小數(shù)形式輸出單精度和雙精度數(shù)據(jù),隱含的小數(shù)位數(shù)為以小數(shù)形式輸出單精度和雙精度數(shù)據(jù),隱含的小數(shù)位數(shù)為6 e 以規(guī)格化的指數(shù)形式輸出單精度和雙精度數(shù)據(jù),隱含的小以規(guī)格化的指數(shù)形式輸出單精度和雙精度數(shù)據(jù),隱含的小 數(shù)位數(shù)為數(shù)位數(shù)為6 printf(“%5.2f”,23.45) 字字 符符意意 義義 字母字母l用于長整型整數(shù)的輸出,可加

10、在格式符用于長整型整數(shù)的輸出,可加在格式符d、o、x、u前面前面 m(正整數(shù))(正整數(shù)) 指定輸出數(shù)據(jù)所占的寬度,若輸出的數(shù)據(jù)位數(shù)指定輸出數(shù)據(jù)所占的寬度,若輸出的數(shù)據(jù)位數(shù)m,為保,為保 證數(shù)據(jù)的正確性,則按實(shí)際位數(shù)輸出;如果數(shù)據(jù)的位數(shù)證數(shù)據(jù)的正確性,則按實(shí)際位數(shù)輸出;如果數(shù)據(jù)的位數(shù) m,則多出的位數(shù)補(bǔ)空格,則多出的位數(shù)補(bǔ)空格 .n(正整數(shù))(正整數(shù)) .n稱為精度稱為精度。對(duì)實(shí)數(shù),表示輸出位小數(shù);對(duì)字符串,對(duì)實(shí)數(shù),表示輸出位小數(shù);對(duì)字符串, 表示截取的字符個(gè)數(shù);表示截取的字符個(gè)數(shù);對(duì)于整數(shù),指定必須輸出的數(shù)字對(duì)于整數(shù),指定必須輸出的數(shù)字 個(gè)數(shù),若輸出的數(shù)字少于指定的個(gè)數(shù),則前面補(bǔ)個(gè)數(shù),若輸出的

11、數(shù)字少于指定的個(gè)數(shù),則前面補(bǔ)0,否則,否則 按原樣輸出按原樣輸出 輸出的數(shù)字或字符左對(duì)齊輸出的數(shù)字或字符左對(duì)齊 使輸出的數(shù)字總是帶使輸出的數(shù)字總是帶“”或或“”號(hào)號(hào) 0在輸出的數(shù)據(jù)前加前導(dǎo)在輸出的數(shù)據(jù)前加前導(dǎo)“0” #使輸出的八進(jìn)制數(shù)(或十六進(jìn)制數(shù))帶前導(dǎo)使輸出的八進(jìn)制數(shù)(或十六進(jìn)制數(shù))帶前導(dǎo)0(或(或0 x) 輸出項(xiàng)列表:輸出項(xiàng)列表:是需要輸出的一些數(shù)據(jù),可以是一是需要輸出的一些數(shù)據(jù),可以是一 個(gè)或者是多個(gè)輸出項(xiàng),當(dāng)有多個(gè)輸出項(xiàng)時(shí),輸出個(gè)或者是多個(gè)輸出項(xiàng),當(dāng)有多個(gè)輸出項(xiàng)時(shí),輸出 項(xiàng)之間用逗號(hào)項(xiàng)之間用逗號(hào)“,”隔開,輸出項(xiàng)可以是常量、隔開,輸出項(xiàng)可以是常量、 變量或表達(dá)式。輸出項(xiàng)的個(gè)數(shù)和類型必

12、須與控制變量或表達(dá)式。輸出項(xiàng)的個(gè)數(shù)和類型必須與控制 字符串的格式字符的個(gè)數(shù)、類型相匹配。字符串的格式字符的個(gè)數(shù)、類型相匹配。 printf (printf (“控制字符串控制字符串”,輸出項(xiàng)列表,輸出項(xiàng)列表) ) printf(“a=%db=%d“,15,27); printf(“hello word“); 1 1、在格式控制字符串中,格式說明與輸出項(xiàng)從左到、在格式控制字符串中,格式說明與輸出項(xiàng)從左到 右在類型上必須一一對(duì)應(yīng)匹配。對(duì)右在類型上必須一一對(duì)應(yīng)匹配。對(duì) long long 型數(shù)據(jù)要型數(shù)據(jù)要 使用使用 %ld%ld 格式輸出。格式輸出。 2 2、在格式控制字符串中,格式說明與輸出項(xiàng)的個(gè)

13、數(shù)、在格式控制字符串中,格式說明與輸出項(xiàng)的個(gè)數(shù) 應(yīng)該相同。如果格式說明的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),應(yīng)該相同。如果格式說明的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù), 則多余的輸出項(xiàng)不輸出;如果格式說明的個(gè)數(shù)多于則多余的輸出項(xiàng)不輸出;如果格式說明的個(gè)數(shù)多于 輸出項(xiàng)的個(gè)數(shù),則對(duì)于多余的格式項(xiàng)將輸出不定值輸出項(xiàng)的個(gè)數(shù),則對(duì)于多余的格式項(xiàng)將輸出不定值 (或(或0 0值)。值)。 在格式控制字符串中,除了合法的格式說明外,可在格式控制字符串中,除了合法的格式說明外,可 以包含任意的合法字符(包括轉(zhuǎn)義字符),這些字以包含任意的合法字符(包括轉(zhuǎn)義字符),這些字 符在輸出時(shí)符在輸出時(shí)“原樣照印原樣照印”。 3、若需輸出百分號(hào)若需輸出

14、百分號(hào)% % 斜杠斜杠 % % 4 4、在輸出語句中改變輸出變量的值,如:、在輸出語句中改變輸出變量的值,如: int a=5; int a=5; printf(“%d%dn”,a,a+);printf(“%d%dn”,a,a+); 5 5、printfprintf函數(shù)的返回值通常是本次調(diào)用函數(shù)的返回值通常是本次調(diào)用 中輸出字符的個(gè)數(shù)。中輸出字符的個(gè)數(shù)。 main ( ) char ch=a; int a=123 ; float x=12.3456 ; printf ( “Hello computer n”); printf (“ %c, %d n”, ch , ch ); printf (“

15、 %.5d,%.2d,%5d,%05d n” , a , a , a , a); printf (“ %f ,%10.3f ,%5.5f ,%2.3fn” , x , x, x, x); Hello computera,9700123,123, 123,0012312.345600, 12.346,12.34560,12.346 int a=12478; 格式控制符格式控制符輸出結(jié)果輸出結(jié)果 %d %8d %3d %-8d 12478 12478 12478 12478 float a= 1274.678 ; 格式控制符格式控制符輸出結(jié)果輸出結(jié)果 %f %e %8.2f %6.2f %10.2

16、e %-10.2e 1274.678000 1.274678e+00 1274.68 1274.68 1.3e+003 1.3e+003 c= “hello” ; 格式控制符格式控制符輸出結(jié)果輸出結(jié)果 %s %3s %7s %7.2s %-7.2s hello hello hello he he 格式:格式: scanf (scanf (“控制字符串控制字符串”,地址表列地址表列) ) 功能:功能:按控制字符串規(guī)定的輸入格式,從鍵盤上將輸按控制字符串規(guī)定的輸入格式,從鍵盤上將輸 入的數(shù)據(jù)依次存到輸入項(xiàng)地址表列所指定入的數(shù)據(jù)依次存到輸入項(xiàng)地址表列所指定 的內(nèi)存單元中。的內(nèi)存單元中。 地址表列:地

17、址表列: 變量的地址表,即:變量的地址表,即: scanf (“ %d %d %d”, printf (“ a=%d , b=%d , c=%d n” , a , b , c); printf (“ s=%d” , a+b+c); 從鍵盤上輸入:從鍵盤上輸入: 3 12 110 屏幕上則顯示:屏幕上則顯示: a=3 , b=12 , c=110 s=125 注意:注意: 1 1、輸入、輸入longlong整型數(shù)據(jù)時(shí),在整型數(shù)據(jù)時(shí),在“”和和“d d” 之間之間 必須加必須加“l(fā) l”;輸入;輸入doubledouble型數(shù)據(jù)時(shí),在型數(shù)據(jù)時(shí),在“% %” 和和“f(e)f(e)”之間也必須加之間

18、也必須加l l。否則得不到正確。否則得不到正確 的數(shù)據(jù)。的數(shù)據(jù)。 2 2、當(dāng)指定輸入數(shù)據(jù)所占的寬度、當(dāng)指定輸入數(shù)據(jù)所占的寬度m m時(shí),系統(tǒng)自動(dòng)按時(shí),系統(tǒng)自動(dòng)按 寬度寬度m m截取所需數(shù)據(jù)。但不能對(duì)實(shí)型數(shù)據(jù)指定截取所需數(shù)據(jù)。但不能對(duì)實(shí)型數(shù)據(jù)指定 小數(shù)位的寬度。小數(shù)位的寬度。 例:例: scanf(scanf(“%4d%2d%4d%2d”, 若輸入:若輸入:123456 123456 則將則將1234a 1234a ,56b56b scanf(scanf(“%7.2f%7.2f”, , 不合法。不合法。 3、輸入項(xiàng)與控制字符串中的格式說明從左到右、輸入項(xiàng)與控制字符串中的格式說明從左到右 在類型上必須一一對(duì)應(yīng)匹配。在類型上必須一一對(duì)應(yīng)匹配。 4 4、數(shù)據(jù)輸入的合法結(jié)束:、數(shù)據(jù)輸入的合法結(jié)束:空格(一個(gè)或多個(gè))、空格(一個(gè)或多個(gè))、 回車、回車、TABTAB鍵、數(shù)據(jù)域?qū)挘欠ㄝ斎?。鍵、數(shù)據(jù)域?qū)?,非法輸入?5 5、在用、在用“%c%c”格式輸入字符時(shí),空格符、制表符格式輸入字符時(shí),空格符、制表符 或回車符、或

溫馨提示

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

評(píng)論

0/150

提交評(píng)論