第3章-順序結構的程序設計(1)_第1頁
第3章-順序結構的程序設計(1)_第2頁
第3章-順序結構的程序設計(1)_第3頁
第3章-順序結構的程序設計(1)_第4頁
第3章-順序結構的程序設計(1)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C語言程序設計第第3章章 順序結構的程序設計順序結構的程序設計主要內(nèi)容主要內(nèi)容1. C1. C語句概述語句概述2. 2. 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出3. 3. 格式化輸入與輸出格式化輸入與輸出4. 4. 順序結構程序設計舉例順序結構程序設計舉例 3.1 C 3.1 C語句概述語句概述C程序源程序文件1源程序文件2源程序文件n預處理命令函數(shù)n函數(shù)1數(shù)據(jù)聲明函數(shù)首部函數(shù)體數(shù)據(jù)聲明執(zhí)行語句 C C語句分為語句分為6類類說明語句說明語句表達式語句表達式語句函數(shù)調用語句函數(shù)調用語句控制語句控制語句復合語句復合語句空語句空語句 3.1 C 3.1 C語句概述語句概述( (一一) )說明語句說明語

2、句 用來申請變量或聲明將要使用的函數(shù)用來申請變量或聲明將要使用的函數(shù)例:例:int x,y,z; float max(float x, float y); 3.1 C 3.1 C語句概述語句概述( (二二) )表達式語句表達式語句 由一個表達式加一個分號構成一個語句由一個表達式加一個分號構成一個語句 a=3; z=x+y;分號分號賦值表達式賦值表達式表達式語句表達式語句 3.1 C 3.1 C語句概述語句概述( (三三) )函數(shù)調用語句函數(shù)調用語句 由一個函數(shù)調用加一個分號構成一個語句由一個函數(shù)調用加一個分號構成一個語句 printf(“This is a C statement.”); 3.

3、1 C 3.1 C語句概述語句概述( (四四) )控制語句控制語句 完成一定的控制功能完成一定的控制功能1 if() else 條件語句條件語句 6 break 間斷語句間斷語句 2 for() 循環(huán)語句循環(huán)語句 7 switch() 開關語句開關語句3 while()循環(huán)語句循環(huán)語句 8 goto 轉向語句轉向語句 4 do while();循環(huán)語句循環(huán)語句 9 return 返回語句返回語句5 continue 繼續(xù)語句繼續(xù)語句 3.1 C 3.1 C語句概述語句概述( (五)復合語句五)復合語句 用一對用一對括起來的語句括起來的語句 z=x+y;t=z/100;printf(“%f”,t

4、); 復合語句復合語句后面后面無無分號;分號;注意: 3.1 C 3.1 C語句概述語句概述( (六六) )空語句空語句 只有一個分號的語句只有一個分號的語句 (什么也不做)(什么也不做) 用來作為循環(huán)語句中的循環(huán)體用來作為循環(huán)語句中的循環(huán)體 留待以后對程序進行擴充時使用,對未設計完成留待以后對程序進行擴充時使用,對未設計完成的模塊,用空語句作為函數(shù)體;的模塊,用空語句作為函數(shù)體; 3.1 C 3.1 C語句概述語句概述C C語言本身不提供輸入輸出語句語言本身不提供輸入輸出語句, ,輸入和輸出操作輸入和輸出操作是由是由C C函數(shù)庫中的函數(shù)來實現(xiàn)的函數(shù)庫中的函數(shù)來實現(xiàn)的例如例如: :字符輸入函數(shù)

5、字符輸入函數(shù):getchar :getchar 字符輸出函數(shù)字符輸出函數(shù):putchar:putchar格式輸入函數(shù)格式輸入函數(shù):scanf :scanf 格式輸出函數(shù)格式輸出函數(shù): printf: printf字符串輸入函數(shù)字符串輸入函數(shù):gets :gets 字數(shù)串輸出函數(shù)字數(shù)串輸出函數(shù):puts:puts 3.2 3.2 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出在使用系統(tǒng)庫函數(shù)時在使用系統(tǒng)庫函數(shù)時, ,要用預編譯命令要用預編譯命令“#include#include”將有關的將有關的“頭文件頭文件”包括到用戶包括到用戶源文件中源文件中. .例如:例如:在調用標準輸入輸出庫函數(shù)時,文件開頭在調用

6、標準輸入輸出庫函數(shù)時,文件開頭應該有:應該有: #include #include “stdio.hstdio.h” 或:或: #include #include 頭文件頭文件 3.2 3.2 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出 3.2 3.2 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出一、字符輸出函數(shù)一、字符輸出函數(shù)一般形式:一般形式:putcharputchar(c c) 函數(shù)作用:函數(shù)作用: 向終端(顯示器)輸出一個字符向終端(顯示器)輸出一個字符 字符型變字符型變量、整型量、整型變量變量例例1 輸出單個字符。輸出單個字符。#includevoid main()char a,b,c;a=B;

7、b=O;c=Y;putchar(a);putchar(b);putchar(c);putchar(n);運行結果:BOYputchar(a);putchar(n);putchar(b);putchar(n);putchar(c);putchar(n);運行結果:B O Y 4.2 4.2 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出二、字符輸入函數(shù)二、字符輸入函數(shù)一般形式:一般形式:getchargetchar()() 函數(shù)作用:從標準輸入設備輸入一個字符。函數(shù)作用:從標準輸入設備輸入一個字符。函數(shù)值:函數(shù)值: 從輸入設備獲取的字符。從輸入設備獲取的字符。 4.2 4.2 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的

8、輸入輸出例2 輸入單個字符。#includevoid main() char c; c=getchar(); putchar(c); putchar(n);運行程序:運行程序:從鍵盤輸入字符從鍵盤輸入字符a a按按EnterEnter鍵鍵屏幕上將顯示輸出的字符屏幕上將顯示輸出的字符a aa aa a 4.2 4.2 字符數(shù)據(jù)的輸入輸出字符數(shù)據(jù)的輸入輸出 #include stdio.hmain ( ) char c; c = getchar( ); putchar(c); 接受一個字符接受一個字符=c輸出該字符輸出該字符c開始開始結束結束運行程序,如果從鍵盤輸入:運行程序,如果從鍵盤輸入:aE

9、NTERaENTER則輸出為:則輸出為: a a如果從鍵盤輸入:如果從鍵盤輸入: abcENTERabcENTER則輸出也為:則輸出也為: a a注意:注意:調用函數(shù)調用函數(shù)getchargetchar時,程序執(zhí)行被中斷,等待用戶時,程序執(zhí)行被中斷,等待用戶從鍵盤輸入數(shù)據(jù)。當用戶鍵入字符并敲回車鍵以后從鍵盤輸入數(shù)據(jù)。當用戶鍵入字符并敲回車鍵以后,程序繼續(xù)運行。若用戶輸入字符后未按回車,則,程序繼續(xù)運行。若用戶輸入字符后未按回車,則鍵入的內(nèi)容一直保留在鍵盤緩沖區(qū)中,只有用戶鍵入的內(nèi)容一直保留在鍵盤緩沖區(qū)中,只有用戶鍵入回車鍵后,字符輸入函數(shù)鍵入回車鍵后,字符輸入函數(shù)getchargetchar才

10、進行處理。才進行處理。函數(shù)函數(shù)getchargetchar將回車鍵作為一個字符讀入,若程序中將回車鍵作為一個字符讀入,若程序中有兩個以上函數(shù)有兩個以上函數(shù)getchargetchar時,應該一次性輸入所有字時,應該一次性輸入所有字符,最后再按回車。符,最后再按回車。無論輸入的是英文字母還是標點符號還是數(shù)字,都是無論輸入的是英文字母還是標點符號還是數(shù)字,都是作為字符輸入。作為字符輸入。例:從鍵盤輸入三個英文字母a,b和c,并依次同行內(nèi)輸出。參考程序:參考程序:#include void main() char ch1,ch2,ch3; ch1=getchar(); ch2=getchar();

11、ch3=getchar(); printf(%c%c%cn,ch1,ch2,ch3);4.3 4.3 格式輸入與輸出格式輸入與輸出一、格式輸出函數(shù)一、格式輸出函數(shù)函數(shù)作用:向終端輸出函數(shù)作用:向終端輸出若干個任意類型若干個任意類型數(shù)據(jù)。數(shù)據(jù)。一般格式:一般格式: printf printf(格式控制參數(shù),輸出表列)(格式控制參數(shù),輸出表列)%d%d: :以帶符號的十進制形式輸出整數(shù)以帶符號的十進制形式輸出整數(shù)%c:以字符形式輸出,只輸出一個字符以字符形式輸出,只輸出一個字符%s:輸出字符串輸出字符串%f:以小數(shù)形式輸出單精度浮點數(shù),隱含輸出六以小數(shù)形式輸出單精度浮點數(shù),隱含輸出六位小數(shù)位小數(shù)p

12、rintf (”格式控制字符串格式控制字符串”,參數(shù)參數(shù)1,參數(shù)參數(shù)2,參數(shù)參數(shù)n)必須用必須用英文的雙引號英文的雙引號括起來括起來作用是控制輸出項的作用是控制輸出項的格式和輸出一些提示格式和輸出一些提示信息信息要輸出的表達式要輸出的表達式常量、變量、運算常量、變量、運算符表達式、函數(shù)返符表達式、函數(shù)返回值等,每個輸出回值等,每個輸出項之間用項之間用( (, ,) )分隔分隔4.3 4.3 格式輸入與輸出格式輸入與輸出格式控制字符的組成:格式控制字符的組成:普通字符:按原樣輸出,主要用于輸出提示普通字符:按原樣輸出,主要用于輸出提示信息。信息。轉義字符:指明特定操作。轉義字符:指明特定操作。格

13、式說明:由格式說明:由“%”和和“格式字符串格式字符串”組成:組成:“% %格式字符串格式字符串”表示按規(guī)定的格式輸出數(shù)表示按規(guī)定的格式輸出數(shù)據(jù)。據(jù)。4.3 4.3 格式輸入與輸出格式輸入與輸出#include void main() int a=97,b=98; printf(“1:%d %dn”,a,b); printf(“2:%d,%dn”,a,b); printf(“3:%c,%cn”,a,b); printf(“4:a=%d,b=%dn”,a,b);程序運行結果:程序運行結果:1:97 982:97,983:a,b4:a=97,b=984.3 4.3 格式輸入與輸出格式輸入與輸出d,

14、ix,Xoucse,Efg,G%格式字符:格式字符:十六進制無符號整數(shù)十六進制無符號整數(shù)不帶符號十進制整數(shù)不帶符號十進制整數(shù) 帶符號帶符號十進制整數(shù)十進制整數(shù)指數(shù)形式浮點小數(shù)指數(shù)形式浮點小數(shù)單一字符單一字符字符串字符串八進制無符號整數(shù)八進制無符號整數(shù)小數(shù)形式浮點小數(shù)小數(shù)形式浮點小數(shù) 實際位數(shù)浮點數(shù)實際位數(shù)浮點數(shù)百分號本身百分號本身int a=567;printf ( “%d”,a);int a=255;printf(“%x”,a);int a=65;printf(“%o”,a);int a=567;printf(“%u”,a);char a=65;printf(“%c”,a);printf(“

15、%s”,“ABC”);float a=567.789;printf(“%e”,a);float a=567.789;printf(“%f”,a);float a=567.789;printf(“%g”,a);printf(“%”);567ff101567AABC5.67789e+02567.789000567.789%4.3 4.3 格式輸入與輸出格式輸入與輸出說明:說明:除了除了X X,E E,G G外,其他各式字符必須用小寫。外,其他各式字符必須用小寫??梢栽诳梢栽趐rintfprintf函數(shù)中的函數(shù)中的“格式控制格式控制”字符串中包字符串中包含轉義字符。含轉義字符。一個格式說明必須以一個

16、格式說明必須以“% %”開頭,以開頭,以9 9個格式字符之個格式字符之一為結束,中間可以插入一為結束,中間可以插入附加附加格式字符。格式字符。想輸出想輸出% %,則應該在格式控制字符串中用連續(xù)兩個,則應該在格式控制字符串中用連續(xù)兩個% %表示表示4.3 4.3 格式輸入與輸出格式輸入與輸出附加說明符附加說明符 說說 明明 l l 輸出長整型數(shù)據(jù),可加在格式轉換符輸出長整型數(shù)據(jù),可加在格式轉換符d,o,x,ud,o,x,u前面前面 m m( (正整數(shù)正整數(shù)) ) 輸出數(shù)據(jù)的寬度輸出數(shù)據(jù)的寬度 指定寬度指定寬度 實際寬度,補空格實際寬度,補空格 指定寬度指定寬度=實際寬度,按實際輸出實際寬度,按實

17、際輸出 不指定寬度,按實際輸出不指定寬度,按實際輸出 .n.n( (正整數(shù)正整數(shù)) )對實數(shù),表示對實數(shù),表示輸出輸出 n n 位小數(shù)。不足補位小數(shù)。不足補0 0;多出則舍入處理。多出則舍入處理。 對字符串,對字符串,表示截取的字符個數(shù)。不足補空格,多出表示截取的字符個數(shù)。不足補空格,多出則丟棄。則丟棄。 - - 輸出的數(shù)據(jù)在輸出域內(nèi)向左對齊輸出的數(shù)據(jù)在輸出域內(nèi)向左對齊 實例:實例: #include void main ( ) char c=a; char ch =Good-bye.; printf(%c,%3c,%3dn, c, c, c);printf(%s,%10s,%-8s,%-12

18、s,%6.4sn,ch,ch,ch,ch,ch);答案:答案: a,_ _a,_97Good-bye.,_Good-bye.,Good-bye.,Good-bye._ _ _,_ _Good例例3 字符數(shù)據(jù)的輸出。字符數(shù)據(jù)的輸出。#includevoid main()char c=a;int i=97;printf(“%c,%dn”,c,c);printf(“%c,%dn”,i,i); 運行結果:運行結果:a,97a,97a,97a,97指定輸出字數(shù)的寬度,指定輸出字數(shù)的寬度,printf(printf(“%3c%3c”,c);,c);則輸出:則輸出: a aa a4.3 4.3 格式輸入與輸

19、出格式輸入與輸出二、格式輸入函數(shù)二、格式輸入函數(shù)函數(shù)作用:按照變量在內(nèi)存的地址將變量值存函數(shù)作用:按照變量在內(nèi)存的地址將變量值存 進去。進去。一般格式:一般格式:scanfscanf(格式控制參數(shù),地址表列)(格式控制參數(shù),地址表列)同同printf函數(shù)函數(shù)是由若干個地址組成的表列,可以是變量的是由若干個地址組成的表列,可以是變量的地址,或字符串的首地址地址,或字符串的首地址4.3 4.3 格式輸入與輸出格式輸入與輸出scanf (”格式控制字符串格式控制字符串”,地址列表地址列表)必須用必須用英文的雙引號英文的雙引號括起來括起來由普通字符和格式說由普通字符和格式說明符組成明符組成由若干地址組

20、成的列由若干地址組成的列表表變量的地址、字符串變量的地址、字符串的首地址、指針變量的首地址、指針變量等,以逗號等,以逗號( (, ,) )間隔間隔4.3 4.3 格式輸入與輸出格式輸入與輸出例例4 用用scanf函數(shù)輸入數(shù)據(jù)。函數(shù)輸入數(shù)據(jù)。#includevoid main()int a,b,c;scanf(%d%d%d,&a,&b,&c);printf(%d,%d,%dn,a,b,c); 運行情況:運行情況:3 4 5 (輸入輸入a,b,c的值的值)3,4,5 (輸出(輸出a,b,c的值)的值)a a在內(nèi)存中的地址在內(nèi)存中的地址& &是地址運算符是地址

21、運算符4.3 4.3 格式輸入與輸出格式輸入與輸出 使用使用scanfscanf函數(shù)時應注意的問題函數(shù)時應注意的問題 : :(1)scanf(1)scanf函數(shù)中的函數(shù)中的“格式控制字符串格式控制字符串”后面應當是變量后面應當是變量地址,而不應是變量名。地址,而不應是變量名。 (2) (2) 如果在如果在“格式控制格式控制”字符串中除了格式說明以外還字符串中除了格式說明以外還有其他字符,則在輸入數(shù)據(jù)時在對應位置應輸入與這些有其他字符,則在輸入數(shù)據(jù)時在對應位置應輸入與這些字符相同的字符。字符相同的字符。 scanf (%d,%d:%f, &x, &y, &z);輸入序列:

22、輸入序列:1,2:3.5ENTER結果:結果:x=1,y=2,z=3.54.3 4.3 格式輸入與輸出格式輸入與輸出scanf(%c%c%c,&c1,&c2,&c3); 輸入:輸入:abc 結果:結果:ac1,c2,bc3 (其余被丟棄其余被丟棄) (3) (3) 在用在用“”格式輸入字符時,空格字符和格式輸入字符時,空格字符和“轉義轉義字符字符”都作為有效字符輸入都作為有效字符輸入 (4) (4) 在輸入數(shù)據(jù)時,可以使用空格,或在輸入數(shù)據(jù)時,可以使用空格,或“回車回車”或或“跳格跳格”(TabTab)鍵作為數(shù)據(jù)之間的分隔符。)鍵作為數(shù)據(jù)之間的分隔符。4.3 4.3 格

23、式輸入與輸出格式輸入與輸出 scanf (%d%d%d, &x, &y, &z);輸入序列一:輸入序列一:123ENTER結果:結果:x=1,y=2,z=3輸入序列二:輸入序列二:1TAB2 3ENTER輸入序列三:輸入序列三:1ENTER 2 3ENTER結果與輸入序列一的結果一樣。結果與輸入序列一的結果一樣。 scanf (x=%d, &x); 要使要使x的的值等于值等于12,從鍵盤應怎樣輸入?,從鍵盤應怎樣輸入? 正確的輸入序列:正確的輸入序列:x=12ENTER 4.4 4.4 順序結構程序設計舉例順序結構程序設計舉例例例5 5 輸入三角形的三邊輸入三角

24、形的三邊長,求三角形面積。長,求三角形面積。假設:三個邊長假設:三個邊長a a,b b,c c能構能構成三角形。成三角形。已知面積公式:已知面積公式:area=area=s=(a+b+c)s=(a+b+c)* *0.50.5c)b)(sa)(ss(s結束結束輸入三邊長輸入三邊長計算計算s s計算面積計算面積開始開始輸出面積輸出面積#include#includevoid main()float a,b,c,s,area;scanf(“%f,%f,%f”,&a,&b,&c);s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“a=%7.2f, b=%7.2f, c=%7.2f, s=%7.2fn”,a,b,c,s);printf(“area=%7.2fn”,area); 數(shù)學函數(shù)庫因為要用到其中的sqrt函數(shù)運行情況:運行情況:3,4,6a= 3.00, b= 4.00, c= 6.00, s= 6.50area= 5.334.4 4.4 順序結構程序設計舉例順序結構程序設計舉例例例6 6 從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。includ

溫馨提示

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

評論

0/150

提交評論