第三講順序結(jié)構(gòu)程序設(shè)計_第1頁
第三講順序結(jié)構(gòu)程序設(shè)計_第2頁
第三講順序結(jié)構(gòu)程序設(shè)計_第3頁
第三講順序結(jié)構(gòu)程序設(shè)計_第4頁
第三講順序結(jié)構(gòu)程序設(shè)計_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 C C語言的基本語句語言的基本語句 數(shù)據(jù)輸入與輸出數(shù)據(jù)輸入與輸出 程序舉例程序舉例第第3 3章章 結(jié)構(gòu)程序設(shè)計三大結(jié)構(gòu)結(jié)構(gòu)程序設(shè)計三大結(jié)構(gòu)順序結(jié)構(gòu)順序結(jié)構(gòu)目的與要求:目的與要求:了解基本語句簡單語句、復合語句理解程序控制結(jié)構(gòu)的概念掌握輸入輸出函數(shù)的基本使用方法 學習重點:學習重點:scanf()與printf()的用法。 結(jié)構(gòu)化程序設(shè)計l結(jié)構(gòu)化程序的基本結(jié)構(gòu)結(jié)構(gòu)化程序的基本結(jié)構(gòu)u結(jié)構(gòu)化程序設(shè)計結(jié)構(gòu)化程序設(shè)計 結(jié)構(gòu)化程序:由三種基本結(jié)構(gòu)(結(jié)構(gòu)化程序:由三種基本結(jié)構(gòu)(順序、順序、選擇、循環(huán)選擇、循環(huán))反復嵌套構(gòu)成的程序)反復嵌套構(gòu)成的程序 優(yōu)點:結(jié)構(gòu)優(yōu)點:結(jié)構(gòu)清晰,易讀清晰,易讀,提高程序設(shè)計,

2、提高程序設(shè)計質(zhì)量和效率質(zhì)量和效率u三種基本結(jié)構(gòu)三種基本結(jié)構(gòu)概述ABCABC流程圖流程圖N-S圖圖A1A2AiAnk=k2k=k1k=knk=ki.(1)二分支選擇結(jié)構(gòu)(2)多分支選擇結(jié)構(gòu)條件條件BA真真假假條件條件AB流程圖流程圖N-S圖圖(1)當型循環(huán)結(jié)構(gòu)(2)直到型循環(huán)結(jié)構(gòu)條件條件A當條件為真當條件為真A流程圖流程圖N-S圖圖A條件條件A直到條件為真直到條件為真流程圖流程圖N-S圖圖無論是無論是運算運算操作操作還是還是流程控制流程控制操操作,都由相應的作,都由相應的語句語句完成完成。 C C語言的基本語句語言的基本語句 什么是語句?完成指定運算或操作的可執(zhí)行單位。完成指定運算或操作的可執(zhí)行

3、單位。 C語言有哪些語句?分類C語句的標志為 ;l 說明語句說明語句 包括常量定義、變量定義和變量說明、包括常量定義、變量定義和變量說明、函數(shù)說明、結(jié)構(gòu)說明等語句。函數(shù)說明、結(jié)構(gòu)說明等語句。int i, j, k =0; char ch;double x,y,z;const char a=A; l 表達式語句表達式語句 由表達式加上分號由表達式加上分號“;”組成組成 表達式;表達式; a = 10 賦值表達式賦值表達式a = 10; 賦值語句賦值語句t=x,x=y,y=t 表達式表達式t=x,x=y,y=t ; 語句語句 函數(shù)調(diào)用語句函數(shù)調(diào)用語句 函數(shù)調(diào)用加上分號函數(shù)調(diào)用加上分號“;”函數(shù)名函

4、數(shù)名( (參數(shù)參數(shù)) );printf (Hello) 函數(shù)調(diào)用函數(shù)調(diào)用printf (“Hello”); 函數(shù)調(diào)用語句函數(shù)調(diào)用語句 空語句空語句 只有分號只有分號“;”組成的語句稱為空語句。空語組成的語句稱為空語句??照Z句是什么也不執(zhí)行的語句。句是什么也不執(zhí)行的語句。main() float x=5,s; ; s=2*3.14*x; printf(“%f”,s); 復合語句復合語句 用用 括起來的一組語句括起來的一組語句。 l 一般形式為:一般形式為: 數(shù)據(jù)說明部分數(shù)據(jù)說明部分; 執(zhí)行語句部分;執(zhí)行語句部分; int a = 2, b = 3, c; c = a + b; printf (c

5、 = %dn, c);判斷程序輸出?判斷程序輸出?main ( ) int x = 1, y = 2; int x=2; int x=3; printf (“x = %d, y = %dn”, x,y); printf (“x = %d, y = %dn”, x,y); printf(“x = %d, y = %dn”, x,y); if( )elseswitchfor( )while( )do.while( )continuebreakgotoreturn分支分支循環(huán)循環(huán)輔助控制輔助控制 數(shù)據(jù)輸入與輸出數(shù)據(jù)輸入與輸出如何實現(xiàn)輸入輸出標準標準I/OI/O函數(shù)函數(shù)掌握掌握4個函數(shù)的使用方法:個函

6、數(shù)的使用方法:l 輸入:輸入:getchar()和和scanf()l 輸出:輸出:putchar()和和printf()#include 實現(xiàn)前提 字符輸入輸出函數(shù)字符輸入輸出函數(shù)1.1.字符輸出函數(shù)字符輸出函數(shù)例如:例如:#include main() int i=97; char ch=a; putchar(i); putchar(n); putchar(ch);例:例:#include main() int c; c=getchar(); putchar(i);運行結(jié)果:運行結(jié)果:A A 字符輸入輸出函數(shù)字符輸入輸出函數(shù)2.2.字符輸入函數(shù)字符輸入函數(shù)l格式格式: putchar( c

7、)l參數(shù)參數(shù): c為字符常量、變量或表達式為字符常量、變量或表達式l功能:把字符功能:把字符c輸出到顯示器上輸出到顯示器上l返回值:返回值: 正常,字符的正常,字符的ASCII碼值;碼值; 出錯,為出錯,為EOF(-1)int putchar(int)int getchar(void)l格式格式: getchar( ): getchar( )l功能:從鍵盤讀一個字符功能:從鍵盤讀一個字符l返回值:返回值: 正常正常: :讀取的讀取的ASCIIASCII碼值;碼值; 出錯出錯: :則返回則返回EOF(-1)EOF(-1)思考思考:以下三種以下三種不同的輸入,不同的輸入,輸出情況如何?輸出情況如何

8、? 1.abcdefg 2.ab 3.a bcdefg 案例:案例:#includemain( ) int i, j; char c; i=getchar( ); putchar(i); j=getchar( ); putchar(j); c=getchar( ); putchar(c); 執(zhí)行執(zhí)行g(shù)etchar()時輸入字符以回車結(jié)束,時輸入字符以回車結(jié)束,同時回車字符也可以做為輸入的字符。同時回車字符也可以做為輸入的字符。 注意注意示例:示例:1. printf(“Its fun!”);輸出輸出 Its fun!2. int a=1,b=2; printf(“%d,%d”,a,b);輸出輸

9、出 1,23. int a=1,b=2; printf(“a=%dnb=%d”,a,b);輸出輸出 a=1 b=24. int a=1,b=2; printf(“%d”,a+b);輸出輸出 35. int a=1,b=2; printf(“a+b”); 輸出輸出 a+b 格式輸出函數(shù)格式輸出函數(shù)printf()printf() 按按指定格式指定格式向輸出設(shè)備向輸出設(shè)備(顯示器顯示器)輸出數(shù)據(jù)。輸出數(shù)據(jù)。一、格式輸出函數(shù)的一般形式一、格式輸出函數(shù)的一般形式printf(“格式控制字符串格式控制字符串”,參數(shù)列表參數(shù)列表);普通字符:按原樣輸出普通字符:按原樣輸出(包括轉(zhuǎn)義字符包括轉(zhuǎn)義字符)格式說

10、明:格式說明:%格式字符格式字符(1)格式控制字符串格式控制字符串printf(“Olympic!n”);printf(“%d,%o”,x,y);例:例:int a=1,b=2,c=3;printf(“%d,%dn”,a,b,c);輸出:輸出:1,2例:例:int a=1,b=2; printf(“%d,%d,%dn”,a,b);輸出:輸出:1,2,2注意:格式說明個數(shù)應與參數(shù)個數(shù)相同且一一對應。注意:格式說明個數(shù)應與參數(shù)個數(shù)相同且一一對應。若少于輸出項個數(shù),多余輸出項不會輸出,否則,會隨機輸出。若少于輸出項個數(shù),多余輸出項不會輸出,否則,會隨機輸出。格式控制串的格式控制串的三類字符三類字符:

11、1)普通字符普通字符:原樣輸出原樣輸出。2)轉(zhuǎn)義字符轉(zhuǎn)義字符:特定操作,如:特定操作,如 n、t。3)格式說明部分格式說明部分:由:由%引導的引導的格式字符串格式字符串組組成,控制數(shù)據(jù)的輸出顯示格式。一般格式為:成,控制數(shù)據(jù)的輸出顯示格式。一般格式為:%flagswidth.precF|N|h|Ltype1. %type 這是最簡單的格式輸出說明形式,說明以何種這是最簡單的格式輸出說明形式,說明以何種類型形式輸出類型形式輸出表達式的值。表達式的值。d,ix,Xoucse,Efg%十六進制無符號整數(shù)十六進制無符號整數(shù)不帶符號十進制整數(shù)不帶符號十進制整數(shù)十進制整數(shù)十進制整數(shù)指數(shù)形式浮點小數(shù)指數(shù)形式

12、浮點小數(shù)單一字符單一字符字符串字符串八進制無符號整數(shù)八進制無符號整數(shù)小數(shù)形式浮點小數(shù)小數(shù)形式浮點小數(shù)e和和f中較短一種中較短一種百分號本身百分號本身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(“%s”,“ABC”);float a=567.78;printf(“%e”,a);float a=567.789;printf(“%f”,a);float a=567.789;prin

13、tf(“%g”,a);printf(“%”);567ff101567AABC5.67780e+02567.789000567.789%1 1、d d:輸出十進制整數(shù):輸出十進制整數(shù) %d: %d:實際數(shù)據(jù)原樣輸出。實際數(shù)據(jù)原樣輸出。 %md: %md:輸出寬度輸出寬度m m位,數(shù)據(jù)位數(shù)位,數(shù)據(jù)位數(shù)m,m,左補左補空格;空格; %-md:%-md:輸出寬度輸出寬度m m位,數(shù)據(jù)位數(shù)位,數(shù)據(jù)位數(shù)m,mm,原樣輸出原樣輸出。例:例:printf(“%6d,%2d,%-6dprintf(“%6d,%2d,%-6d,%+2d”,123,123,-123”,123,123,-123,1);1);輸出:輸出

14、: 123123,123,123,123 123 , +1+1%+md:%+md:正數(shù)輸出正數(shù)輸出。 1d1d:輸出長整型數(shù)據(jù):輸出長整型數(shù)據(jù) 32768327683276732767之外的數(shù)之外的數(shù) %0md: %0md:不足位補不足位補0 0例:例:printfprintf(“6d,%06d”,123,1236d,%06d”,123,123); ;輸出:輸出:123 123 ,000123000123mldmld:指定寬度:指定寬度2.2.o o輸出八進制整數(shù)(無符號數(shù))輸出八進制整數(shù)(無符號數(shù)) %o %o:原樣輸出。:原樣輸出。 %mo %mo:不足位左補空格,超過則原樣輸出。:不足位

15、左補空格,超過則原樣輸出。 % %momo:不足位右補空格,超過則原樣輸出。:不足位右補空格,超過則原樣輸出。例:例:printfprintf(“%d,%o,%8on”,25,25,25%d,%o,%8on”,25,25,25); ;輸出:輸出:2525,3131, 31 31 輸出:輸出:0 03131例:例:printfprintf(“%#on”%#on”,25);25);1o:1o:按八進制形式輸出長整型數(shù)據(jù)。按八進制形式輸出長整型數(shù)據(jù)。 %#o: %#o:輸出前導符輸出前導符0 03. 3. x/Xx/X輸出十六進制整數(shù)(無符號數(shù))輸出十六進制整數(shù)(無符號數(shù)) %x %x:按十六進制形

16、式輸出基本整型數(shù)據(jù)。:按十六進制形式輸出基本整型數(shù)據(jù)。 %lx: %lx:按十六進制形式輸出長整型數(shù)據(jù)。按十六進制形式輸出長整型數(shù)據(jù)。 %#x: %#x:輸出前導符輸出前導符0 x0 x %mx %mx: %-mx%-mx:例:例:printf(“%d,%X,%#X”,26,26,26)printf(“%d,%X,%#X”,26,26,26);輸出:輸出:2626,2A, 2A, 0X0X2A2A0 0127127的整數(shù)也可用的整數(shù)也可用%c%c輸出。輸出。4.4.u u以十進制形式輸出無符號數(shù)以十進制形式輸出無符號數(shù) %u-0%u-065535655355.5.c c輸出單個字符輸出單個字符

17、%c%c%mc,%-mc%mc,%-mc例:例:unsigned int x=30; printf(“%u”,x);輸出:輸出:30輸出:輸出:65, A65, A 66, B 66, B 例:寫出程序運行結(jié)果。例:寫出程序運行結(jié)果。#include #include main()main()char c1,c2;char c1,c2; c1=A;c2=B; c1=A;c2=B; printf(%d,%3cn”,c1,c1); printf(%d,%3cn”,c1,c1); printf(“%d,%-3cn”,c2,c2); printf(“%d,%-3cn”,c2,c2); 6. s輸出一個

18、字符串輸出一個字符串%s%s %ms %ms %-ms %-ms 例:例:#include #include main() main() printf(“%3s,%-7s”, “china”, printf(“%3s,%-7s”, “china”, “china”);“china”); 輸出輸出:china, china :china, china % %m.ns m.ns 指定輸出位數(shù)指定輸出位數(shù)m,m,輸出字符串從左起的輸出字符串從左起的 n n個字符,若個字符,若nmnm右補空格右補空格,否則原樣輸,否則原樣輸 出。出。 %m.ns %m.ns 指定輸出位數(shù)指定輸出位數(shù)m,m,輸出字符串

19、從左起的輸出字符串從左起的 n n個字符,若個字符,若nmnm左補空格左補空格,否則原樣,否則原樣 輸出。輸出。例:例:#include #include main()main() p r i n t f ( “ % 5 . 2 s , % . 4 s , % - p r i n t f ( “ % 5 . 2 s , % . 4 s , % -5.3s”,“china”,“china”,“china”);5.3s”,“china”,“china”,“china”); 輸出輸出: ch,chin,chi : ch,chin,chi 例例:float x=111111.111,y=222222.

20、222;printf(“%fn”,x+y);7. f 以小數(shù)形式輸出單,雙精度以小數(shù)形式輸出單,雙精度 % %ffloat:整數(shù)部分全部輸出,并輸出整數(shù)部分全部輸出,并輸出6位小數(shù)位小數(shù);double:整數(shù)部分全部輸出,并輸出整數(shù)部分全部輸出,并輸出6位小數(shù)。位小數(shù)。輸出:輸出:333333.328125 %m.nf: %m.nf:輸出輸出寬度寬度m m列,列,小數(shù)位數(shù)為小數(shù)位數(shù)為n n:數(shù)據(jù):數(shù)據(jù)長度長度m,m,左補空格。左補空格。%-m.nf:%-m.nf:輸出寬度輸出寬度m m列,小數(shù)位數(shù)為列,小數(shù)位數(shù)為n n:數(shù)據(jù)長:數(shù)據(jù)長度度m,m,右補空格。右補空格。如如:float x=123.

21、456;:float x=123.456; printf(“%8.2f,%.2fn”,x,x); printf(“%8.2f,%.2fn”,x,x);輸出輸出: 123.46,123.46123.46,123.46當當n實際小數(shù)位數(shù)時,若在有效數(shù)字范圍內(nèi)進行四舍五入。實際小數(shù)位數(shù)時,若在有效數(shù)字范圍內(nèi)進行四舍五入。 %e %e 8. e以指數(shù)形式輸出實數(shù)以指數(shù)形式輸出實數(shù) 例:例:printf(“%eprintf(“%e,%En”%En”,123.456);123.456); 輸出:輸出:1.234560e+002 , 1.234560E+002 1.234560e+002 , 1.23456

22、0E+002 %m.ne,%-m.ne %m.ne,%-m.ne 例:例: float x=123.456;float x=123.456; printf printf(%f,%e,%g”,x,x,x%f,%e,%g”,x,x,x); ; 9.g/G選擇選擇e或或f格式最緊湊的一種格式,且不格式最緊湊的一種格式,且不輸出無意義的輸出無意義的0。 輸出輸出123.456001,1.234560e+002,123.456 123.456001,1.234560e+002,123.456 1. scanf(“%d%d”,&a,&b);輸入:輸入:1 2回車回車 或者或者 1回車回車2

23、回車回車2. scanf(“%d,%d”,&a,&b);輸入:輸入:1,2回車回車3. scanf(“a=%d,b=%d”,&a,&b);輸入:輸入:a=1,b=2回車回車 格式輸入函數(shù)格式輸入函數(shù)示例:示例:一般形式一般形式:scanf(格式控制字符串格式控制字符串, 地址列表地址列表);q格式控制字符串中,有兩類字符:格式控制字符串中,有兩類字符:普通字符普通字符:格式字符格式字符:由:由%引導的格式字符串組成引導的格式字符串組成qscanf :&加變量名,指的是該變量所代表的內(nèi)加變量名,指的是該變量所代表的內(nèi)存空間的存空間的地址地址。qscanf

24、語句在運行時,會停下來,等待從鍵盤輸語句在運行時,會停下來,等待從鍵盤輸入值依次存入地址列表中的地址空間。入值依次存入地址列表中的地址空間。(2)(2)注意字符的連續(xù)輸入。注意字符的連續(xù)輸入。char a,b,c;char a,b,c;scanf(“%c%c%c”,&a,&b,&c);scanf(“%c%c%c”,&a,&b,&c);應輸入:應輸入:ABCABC(回車)(回車)注意:輸入數(shù)字,以空格、回車、注意:輸入數(shù)字,以空格、回車、tab為分隔符,但輸入字符時,應為分隔符,但輸入字符時,應連續(xù)輸入,最后按回車連續(xù)輸入,最后按回車。否則,。否則

25、,空格、回車、空格、回車、tab都做為有效字符被都做為有效字符被變量接收。變量接收。% * widthF|Nh|Ltypetype是必須的,表示輸入后轉(zhuǎn)換的數(shù)據(jù)類型。是必須的,表示輸入后轉(zhuǎn)換的數(shù)據(jù)類型。d(D)十進制整數(shù)十進制整數(shù)o(O)八進制整數(shù)八進制整數(shù)x(X)十六進制整數(shù)十六進制整數(shù)i(I)自動根據(jù)數(shù)頭分辨十、八、十六進制自動根據(jù)數(shù)頭分辨十、八、十六進制u(U)無符號十進制整數(shù)無符號十進制整數(shù)c單個字符單個字符s字符串字符串f(e,g,G)實數(shù)實數(shù)n不輸入數(shù)據(jù)不輸入數(shù)據(jù),將已讀入的字符送到對應的地址中將已讀入的字符送到對應的地址中%百分號百分號 scanf語句格式說明部分的一般格式為:語

26、句格式說明部分的一般格式為:scanf使用小結(jié)使用小結(jié)u普通字符普通字符原樣輸入原樣輸入。 scanf(”x=%d”,&x);u變量前加上變量前加上&。u默認間隔為默認間隔為空格、回車、空格、回車、tab。u實數(shù)實數(shù)不許規(guī)定精度不許規(guī)定精度,像,像%10.4f是不合法的。是不合法的。u類型不匹配則類型不匹配則停止停止處理處理3.3 案例分析案例分析分析分析:1.定義實型變量定義實型變量r、l、s用于存放半徑、周長、用于存放半徑、周長、面積;面積;2.調(diào)用輸入函數(shù),輸入調(diào)用輸入函數(shù),輸入r:3.分別利用周長公式和面積公式求出分別利用周長公式和面積公式求出l、s;4.調(diào)用輸出函數(shù)輸

27、出調(diào)用輸出函數(shù)輸出l、s?!纠纠?.1 】輸入圓的半徑輸入圓的半徑,輸出其周長和面積。輸出其周長和面積。程序代碼:程序代碼:#includevoid main( ) float r, l,s; printf(Input circle radius(r0):); scanf(%f ,&r); l=2*3.14*r; s=3.14*r*r; printf(“l(fā)=%fn,l); printf(“s=%fn,s); getch();分析:分析:1.定義三個字符型變量定義三個字符型變量ch1,ch2,ch3;2.調(diào)用字符輸入函數(shù)調(diào)用字符輸入函數(shù),輸入三個字符依次輸入三個字符依次存于存于ch1、ch2、ch3;3.按按ch3、ch2、ch1順序輸出三個字符。順序輸出

溫馨提示

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

評論

0/150

提交評論