




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語(yǔ)言程序設(shè)計(jì)2013 .91ppt課件C語(yǔ)言程序設(shè)計(jì)2013 .91ppt課件 第一章 C語(yǔ)言概述1.1 語(yǔ)言出現(xiàn)的歷史背景:ALGOL 60CPL語(yǔ)言BCPL 語(yǔ)言B 語(yǔ)言C 語(yǔ)言ANSI C 2ppt課件 第一章 C語(yǔ)言概述ALGOL 61.2 C語(yǔ)言的特點(diǎn):1.語(yǔ)言簡(jiǎn)潔,緊湊,使用方便,靈活。 一共有32個(gè)關(guān)鍵字,9種控制語(yǔ)句。程序主要用小寫字母書寫。2. 運(yùn)算符豐富(共有34種) 位運(yùn)算,逗號(hào)運(yùn)算符,條件運(yùn)算符, 指針運(yùn)算等等 C+ +c max=(ab)?a:b a+=b3. 數(shù)據(jù)結(jié)構(gòu)豐富(共有34種)整型,實(shí)型,字符型,數(shù)組,結(jié)構(gòu)體,共用體,枚舉,指針等等。3ppt課件1.2 C
2、語(yǔ)言的特點(diǎn):1.語(yǔ)言簡(jiǎn)潔,緊湊,使用方便,靈活4. 具有結(jié)構(gòu)化的控制語(yǔ)句。 順序,選擇,循環(huán),函數(shù)。5語(yǔ)法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大。 變量使用靈活,整型、字符型,邏輯型可以相互通用。放寬了語(yǔ)法檢查。6中級(jí)語(yǔ)言的特性 允許直接訪問(wèn)物理地址,能進(jìn)行位的操作,能實(shí)現(xiàn)匯編語(yǔ)言的大部分功能,可以直接對(duì)硬件進(jìn)行操作。且有高級(jí)語(yǔ)言的功能,又具有低級(jí)語(yǔ)言的功能。7生成目標(biāo)代碼質(zhì)量高,執(zhí)行的效率高。 語(yǔ)法決定編譯的速度快,一般只比匯編語(yǔ)言低10%-20%。4ppt課件4. 具有結(jié)構(gòu)化的控制語(yǔ)句。 4ppt課件8.可移植性好。 相對(duì)于匯編語(yǔ)言來(lái)說(shuō),一般不需要修改就可以移植到其它的計(jì)算機(jī),及其它的操作系統(tǒng)上去
3、。5ppt課件8.可移植性好。5ppt課件 1.3 簡(jiǎn)單C程序介紹。 例1: main( ) printf(“This is a c program.n”); 主函數(shù)在屏幕上顯示字符“This is a c program.”并將光標(biāo)移到下一行顯示6ppt課件 1.3 簡(jiǎn)單C程序介紹。 例1: 主函數(shù)在屏幕上例2: main( ) int a,b,sum; a=123;b=246; sum=a+b; printf(“sum is%dn”,sum); 功能是計(jì)算兩個(gè)數(shù)之和,并在屏幕上顯示出來(lái)定義變量為變量賦值Main() 稱為程序首部,兩個(gè)花括號(hào)中的內(nèi)容為程序體.Printf()為屏幕輸出函數(shù).
4、其中的“n”為轉(zhuǎn)義字符(回車換行)7ppt課件例2: 功能是計(jì)算兩個(gè)數(shù)之和,并在屏幕上顯示出來(lái)定義變量為例3 int max(int x,int y) int z; if (xy) z=x; else z=y; return(z);main() /*求兩數(shù)之中的大者*/ int a,b,c; scanf(“%d,%d”,&a,&b); c=max(a,b); printf(“max=%d”,c);主函數(shù)返回兩個(gè)數(shù)中的大者的函數(shù)8ppt課件例3 主函數(shù)返回兩個(gè)數(shù)中8ppt課件 例4: #include main() int add(int x,int y); int a,b,c; scanf(“
5、%d%d”,&a,&b); a=abs(a); b=abs(b); c=add(a,b); printf(“|a|+|b|=%dn”,c);int add(int x,int y) int z; z=x+y; return(z);主函數(shù)求兩個(gè)數(shù)絕對(duì)值之和的程序.包含文件 求兩個(gè)數(shù)之和的函數(shù)9ppt課件 例4: 主函數(shù)包含文件 求兩個(gè)數(shù)之9ppt課件綜上所述:C程序是由函數(shù)構(gòu)成的(庫(kù)函數(shù)及自定義函數(shù)),一個(gè)C源程序至少包括一個(gè) main( )函數(shù),也可以包括一個(gè)main( )函數(shù)和若干個(gè)其他函數(shù)構(gòu)成。2.C語(yǔ)言函數(shù)的組成函數(shù)的首部 int max ( int x , int y ) 函數(shù)類型 函
6、數(shù)名 形式參數(shù)的名及類型說(shuō)明函數(shù)體. (必須用一對(duì)花括號(hào)括起來(lái).)聲明部分 (變量及函數(shù)的聲明,它們?cè)谑褂们氨仨氝M(jìn)行聲明)執(zhí)行部分(具體操作部分)10ppt課件綜上所述:10ppt課件特殊情況:空函數(shù) dump( ) C程序總是重main( )函數(shù)開(kāi)始執(zhí)行。C程序書寫格式自由。每個(gè)語(yǔ)句和數(shù)據(jù)定義的最后必須有一個(gè)分號(hào)。C語(yǔ)言本身沒(méi)有輸入輸出語(yǔ)句。/* */為注釋符。11ppt課件特殊情況:空函數(shù)11ppt課件Turbo C源程序的一般形式為: 包含文件 子函數(shù)類型說(shuō)明 全程變量定義 main() 局部變量定義 sub1() 局部變量定義 12ppt課件Turbo C源程序的一般形式為:12ppt
7、課件 sub2() 局部變量定義 . . . subN() 局部變量定義 13ppt課件 sub2() 1.4 C語(yǔ)言的上機(jī)步驟1.C程序的執(zhí)行過(guò)程 總體上分為四個(gè)步: 編輯編譯連接-執(zhí)行編輯輸入源程序(代碼)F.c 磁盤文件編譯F.obj 二進(jìn)制代碼(每個(gè)模塊單獨(dú)編譯)連接F.exe可執(zhí)行文件連接即組裝的過(guò)程.執(zhí)行結(jié)果14ppt課件1.4 C語(yǔ)言的上機(jī)步驟1.C程序的執(zhí)行過(guò)程 總體 1.2 TURBO C集成環(huán)境的介紹:系統(tǒng)安裝(如安裝在c:tc下)執(zhí)行turbo c 程序 c:tc tc (出現(xiàn)Turbo C 集成環(huán)境)3. 參看集成開(kāi)發(fā)環(huán)境的真實(shí)演示15ppt課件 1.2 TURBO C
8、集成環(huán)境的介紹:系統(tǒng)安裝(如安裝在教學(xué)小結(jié)了解C語(yǔ)言的特點(diǎn).重點(diǎn)掌握C語(yǔ)言源程序的總體結(jié)構(gòu).重點(diǎn)掌握C語(yǔ)言程序的執(zhí)行過(guò)程.重點(diǎn)掌握TURBO 集成環(huán)境的介紹16ppt課件教學(xué)小結(jié)了解C語(yǔ)言的特點(diǎn).16ppt課件練習(xí)題:C語(yǔ)言以函數(shù)為程序的基本單位,有什么好處.參照例題寫一個(gè)程序,輸出以下信息:* Very goodI* 編寫一程序,輸入三個(gè)數(shù),輸出其中的最大者.17ppt課件練習(xí)題:C語(yǔ)言以函數(shù)為程序的基本單位,有什么好處.17pptMain() printf(“*n”); printf(“ Very good!n”); printf(“*”);18ppt課件Main()18ppt課件Main
9、() /* 求三個(gè)數(shù)中最大的并輸出 */ int a,b,c,max; scanf(“%d,%d,%d”,&a,&b,&c); max=a; If (ab) max=b; If (maxc) max=c; Printf(“max=%d”,max);19ppt課件Main() /* 求三個(gè)數(shù)中最大的并輸出 */19p第2章 程序的靈魂-算法1 程序應(yīng)包含的兩方面的內(nèi)容(1)對(duì)數(shù)據(jù)的描述。在程序中要制定數(shù)據(jù)的類型和數(shù) 據(jù)的組織形式,即數(shù)據(jù)結(jié)構(gòu)(data structure)。 (2)對(duì)操作的描述。即操作步驟,也就是算法。20ppt課件第2章 程序的靈魂-算法1 程序應(yīng)包含的兩方面的內(nèi)2 程序的組成
10、 (2) 算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計(jì)方法+語(yǔ)言工具和環(huán)境=程序(1) 數(shù)據(jù)結(jié)構(gòu)+算法=程序21ppt課件2 程序的組成 (2) (1) 2.1 算法的概念1 什么是算法 廣義地說(shuō),為解決一個(gè)問(wèn)題所采取的方法和步驟,就稱為算法。用計(jì)算機(jī)解決問(wèn)題的方法和步驟,就叫計(jì)算機(jī)算法。2 計(jì)算機(jī)算法的分類 (1) 數(shù)值運(yùn)算算法 (2) 非數(shù)值運(yùn)算算法22ppt課件 2.1 算法的概念1 什么是算法2 計(jì)算機(jī)算法的分類22p2.2 簡(jiǎn)單算法舉例例 2.1 求 1 2 3 4 5 S1:使 1 pS2:使 2 iS3:使 p *i pS4:使 i+1 iS5:若 i= 80,則打印 ni 和 gi ,否則不打印S
11、3:i+1 iS4:如果 i= 50,返回S2,繼續(xù)執(zhí)行,否則,算法結(jié)束。24ppt課件例 2.2 有50個(gè)學(xué)生,要求將他們之中成績(jī)?cè)?0分以上者打例2.3 判定20002500年中的每一年是否閏年,將結(jié)果輸出。閏年的條件:能被4整除且不能被100整除的年份是閏年,能被100整除又能被400整除的年份是閏年。S1:2000yS2:若y不被4整除,輸出y不是閏年。轉(zhuǎn)到s6S3:若y能被4整除,且不能被100整除,輸出y是閏年。轉(zhuǎn)到s6S4:y既能被100整除又能被400整除,輸出y是閏年,轉(zhuǎn)到s6S5:輸出y不是閏年。S6:y+1 yS7:當(dāng)y2500時(shí)算法結(jié)束。25ppt課件例2.3 判定20
12、002500年中的每一年是否閏年,將結(jié)例 2.4 求 1-1/2+1/3-1/4+1/99-1/100S1:1 signS2:1 sum S3:2 denoS4: (-1) * sign signS5:sign *(1/deno) termS6:sum+term sumS7:deno+1 denoS8:若deno=100返回S4;否則算法結(jié)束。26ppt課件例 2.4 求 1-1/2+1/3-1/4+1/99-1例 2.5 對(duì)一個(gè)大于或等于3的正整數(shù),判斷它是不是一個(gè)素?cái)?shù)S1:輸入n的值S2:2 iS3:n被i除,得余數(shù)rS4:若r=0, 則打印n“不是素?cái)?shù)”,算法結(jié)束。S5:i+1 iS6:
13、若 i=80i+1=ii50結(jié)束打印ni, giYNNY30ppt課件例 2 流程圖開(kāi)始1=igi=80i+1=ii502.4.3 三種基本結(jié)構(gòu)和改進(jìn)的流程圖1、傳統(tǒng)流程圖的弊端 流程線轉(zhuǎn)向無(wú)規(guī)律,難以閱讀,難以修改2、三種基本結(jié)構(gòu)(1)順序結(jié)構(gòu) (2)選擇結(jié)構(gòu)ABpABababpAab31ppt課件2.4.3 三種基本結(jié)構(gòu)和改進(jìn)的流程圖1、傳統(tǒng)流程圖的弊端(3) 循環(huán)結(jié)構(gòu)1 當(dāng)型循環(huán)結(jié)構(gòu)(while)pA成立abAp不成立成立ab2直到型循環(huán)(until)32ppt課件(3) 循環(huán)結(jié)構(gòu)1 當(dāng)型循環(huán)結(jié)構(gòu)(while)pA成立a三種基本結(jié)構(gòu)的共同特點(diǎn)(1)只有一個(gè)入口(2)只有一個(gè)出口(3)結(jié)構(gòu)
14、內(nèi)的每一部分都有機(jī)會(huì)被執(zhí)行到(4)結(jié)構(gòu)內(nèi)不存在死循環(huán)結(jié)構(gòu)化算法:由三種基本結(jié)構(gòu)所構(gòu)成的算法33ppt課件三種基本結(jié)構(gòu)的共同特點(diǎn)(1)只有一個(gè)入口結(jié)構(gòu)化算法:由三種基2.4.4 用N-S流程圖表示算法N-S 流程圖符號(hào)ABp成立不成立AB當(dāng)p成立A直到p成立A34ppt課件2.4.4 用N-S流程圖表示算法N-S 流程圖符號(hào)ABp1=i2=iti=ti+1=i直到I5打印t1=igi=80是否打印ni, jii+1=i直到i5035ppt課件1=i2=iti=ti+1=i直到I5打印t1=2.4.5 用偽代碼表示算法 偽代碼是用介于自然語(yǔ)言和計(jì)算機(jī)語(yǔ)言之間的文字和符號(hào)來(lái)描述算法。如打印x的絕對(duì)值
15、的算法If x is positive then print xElse pring -x36ppt課件2.4.5 用偽代碼表示算法 偽代碼是用介于自然語(yǔ)2.4.6 用計(jì)算機(jī)語(yǔ)言表示算法 main() int i ,t ; i=1; i=2 while(i=5) t=t*i; i=i+1; printf( “%d”,t) 37ppt課件2.4.6 用計(jì)算機(jī)語(yǔ)言表示算法 main()37pp2.5 結(jié)構(gòu)化程序設(shè)計(jì)方法結(jié)構(gòu)化程序:就是用高級(jí)語(yǔ)言表示的結(jié)構(gòu)化算法。結(jié)構(gòu)化程序設(shè)計(jì)方法的基本思路:把一個(gè)復(fù)雜問(wèn)題的求解過(guò)程分階段進(jìn)行,每個(gè)階段處理的問(wèn)題都控制在人們?nèi)菀桌斫夂吞幚淼姆秶鷥?nèi)。 方法 (1)自頂
16、向下;(2)逐步求精; (3)模塊設(shè)計(jì);(4)結(jié)構(gòu)化編碼38ppt課件2.5 結(jié)構(gòu)化程序設(shè)計(jì)方法結(jié)構(gòu)化程序:就是用高級(jí)語(yǔ)言表示小結(jié):深刻理解和掌握算法的概念會(huì)用自然語(yǔ)言和流程圖表示一般的算法重點(diǎn)掌握用n-s圖表示算法了解偽代碼表示算法(以后要重點(diǎn)掌握)深刻理解和掌握三種基本結(jié)構(gòu),結(jié)構(gòu)化算法和結(jié)構(gòu)化程序設(shè)計(jì)方法39ppt課件小結(jié):39ppt課件第3章 數(shù)據(jù)描述與基本操作31 C的數(shù)據(jù)類型 數(shù)據(jù)類型基本類型整型字符型實(shí)型單精度型雙精度型枚舉類型構(gòu)造類型數(shù)組類型結(jié)構(gòu)體類型共同體類型指針類型空類型40ppt課件第3章 數(shù)據(jù)描述與基本操作31 C的數(shù)據(jù)類型 數(shù)據(jù)類型的定義:一個(gè)值的集合和定義在這個(gè)值集上
17、的一組操作。怎樣掌握數(shù)據(jù)類型1、掌握它的存儲(chǔ)結(jié)構(gòu)和的值域2、掌握它的操作集合 41ppt課件數(shù)據(jù)類型的定義:一個(gè)值的集合和定義在這個(gè)值集上的一組操作。怎3.2 常量與變量標(biāo)識(shí)符: 所謂標(biāo)識(shí)符是指用來(lái)標(biāo)識(shí)符號(hào)常量名、變量名、函數(shù)名、數(shù)組名、類型名、文件名的有效字符序列。簡(jiǎn)單地說(shuō),標(biāo)識(shí)符就是一個(gè)名字。注意:大寫字母和小寫字母被認(rèn)為是兩個(gè)不同的字符。 C語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,第一個(gè)字母必須是字母或下劃線。42ppt課件3.2 常量與變量標(biāo)識(shí)符:注意:大寫字母和小寫字母被認(rèn)為是ANSI C標(biāo)準(zhǔn)沒(méi)有規(guī)定標(biāo)識(shí)符的長(zhǎng)度Turbo C3.0標(biāo)識(shí)符的定義十分靈活。作為標(biāo)識(shí)符必須滿足
18、以下規(guī)則: 1. 所有標(biāo)識(shí)符必須由一個(gè)字母(az, AZ)或下劃線(_)開(kāi)頭; 2. 標(biāo)識(shí)符的其它部分可以用字母、下劃線或數(shù)字(09)組成; 3. 大小寫字母表示不同意義, 即代表不同的標(biāo)識(shí)符; 4. 標(biāo)識(shí)符一般不超過(guò)32個(gè)字符; 5. 標(biāo)識(shí)符不能使用Turbo C的關(guān)鍵字43ppt課件ANSI C標(biāo)準(zhǔn)沒(méi)有規(guī)定標(biāo)識(shí)符的長(zhǎng)度Turbo C3.0標(biāo)識(shí)下面舉出幾個(gè)正確和不正確的標(biāo)識(shí)符: 正確 不正確 smart 5smart _decision bomb? key_board key.board FLOAT float定義標(biāo)識(shí)符時(shí)應(yīng)注意:1、 標(biāo)識(shí)符起名時(shí)盡量“見(jiàn)名知義”,增加程序的可讀性。2、 變
19、量名,函數(shù)名一般用小寫,符號(hào)常量用大寫。3、 盡量少用一些容易認(rèn)錯(cuò)的字符。如 no,n0等等。4、 標(biāo)識(shí)符一般不用下劃線開(kāi)始,防止與擴(kuò)展的關(guān)鍵字重名。44ppt課件下面舉出幾個(gè)正確和不正確的標(biāo)識(shí)符:3.2.1 常量和符號(hào)常量程序運(yùn)行中不變的量叫常量。1、字面常量:3,-4,6.67 ,c 。2、符號(hào)常量:# define PRICE 30Main() int num ,total; num=10; total=num*PRICE; printf(“total=%d”,total);45ppt課件3.2.1 常量和符號(hào)常量程序運(yùn)行中不變的量叫常量。45pp習(xí)慣上:符號(hào)常量名用大些,變量用小寫。使
20、用符號(hào)常量的好處:1、含義清楚2、修改方便,“一改全改”46ppt課件習(xí)慣上:符號(hào)常量名用大些,變量用小寫。使用符號(hào)常量的好處:43.2.2 變量變量名內(nèi)存地址Sum 000001010000010110288947ppt課件3.2.2 變量變量名內(nèi)存地址Sum 000001010注意:C 語(yǔ)言要求對(duì)變量“先定義,后使用”。先定義的目的:(1)便于發(fā)現(xiàn)錯(cuò)誤,避免變量使用錯(cuò)誤。(2)為定義的變量分配存儲(chǔ)單元(3)檢查該變量所進(jìn)行的運(yùn)算的合法型 如:a/b , a%b 。48ppt課件注意:C 語(yǔ)言要求對(duì)變量“先定義,后使用”。先定義的目的:43.3 整型數(shù)據(jù)3.3.1 整型常量的表示方法1、十進(jìn)
21、制:253,562,02、八進(jìn)制:以0開(kāi)頭的是八進(jìn)制。0123,0256。3、十六進(jìn)制:以0 x開(kāi)頭的數(shù)是十六進(jìn)制。 0 x234,0 x456,0 xAC5。49ppt課件3.3 整型數(shù)據(jù)3.3.1 整型常量的表示方法49pp3.3.2 整型變量1、整型數(shù)據(jù)在內(nèi)存中的存放形式 int i,j; i=10; j=-10;0|0 |0 |0 |0 |0 |0 |00|0 |0 |0 |1 |0 |1 |0數(shù)值在內(nèi)存中以補(bǔ)碼的形式的形式存儲(chǔ):i50ppt課件3.3.2 整型變量1、整型數(shù)據(jù)在內(nèi)存中的存放形式 intj0|0 |0 |0 |0 |0 |0 |00|0 |0 |0 |1 |0 |1 |
22、0j的絕對(duì)值的原碼1|1 |1 |1 |1 |1 |1 |11|1 |1 |1 |0 |1 |0 |11|1 |1 |1 |1 |1 |1 |11|1 |1 |1 |0 |1 |1 |0取反再加151ppt課件j0|0 |0 |0 |0 |0 |0 |00|0 |0 |2、整型變量的分類基本類型符:int三類基本整型類型(1)基本整型 int(2)短整型 short int(3)長(zhǎng)整型 long int52ppt課件2、整型變量的分類基本類型符:int52ppt課件加修飾符的整型變量共六種 unsigned int 無(wú)符號(hào)整型數(shù)說(shuō)明。 字長(zhǎng)為2字節(jié)共16位二進(jìn)制數(shù), 數(shù)的范圍是065535。
23、unsigned short int 無(wú)符號(hào)短整型數(shù)說(shuō)明。簡(jiǎn)寫為unsigned int, 字長(zhǎng)為2字節(jié)共16位二進(jìn)制數(shù), 數(shù)的范圍是065535。 unsigned long int無(wú)符號(hào)長(zhǎng)整型數(shù)說(shuō)明。簡(jiǎn)寫為unsigned long, 字長(zhǎng)為4字節(jié)共32位二進(jìn)制數(shù), 數(shù)的范圍是04294967295。 53ppt課件加修飾符的整型變量共六種53ppt課件 signed int 有符號(hào)整型數(shù)字長(zhǎng)為2字節(jié)共16位二進(jìn)制數(shù), 數(shù)的范圍是-3276832767。 signed short int 有符號(hào)短整型數(shù)說(shuō)明。簡(jiǎn)寫為short, 字長(zhǎng)為2字節(jié)共16位二進(jìn)制數(shù), 數(shù)的范圍是 -32768327
24、67。 signed long int 有符號(hào)長(zhǎng)整型數(shù)說(shuō)明。簡(jiǎn)寫為long, 字長(zhǎng)為4字節(jié)共32位二進(jìn)制數(shù), 數(shù)的范圍是-21474836482147483647。 54ppt課件 signed int 有符號(hào)整型數(shù)字長(zhǎng)為2字節(jié)共1例3.2 整型變量的定義使用Main() int a,b,c,d; unsigned u; a=12;b= -24; u=10; c=a+u;d=b+u; printf(“a+u=%d,b+u=%dn”,c,d)運(yùn)行結(jié)果:a+u= 22,b+u= -1455ppt課件例3.2 整型變量的定義使用55ppt課件4、整型數(shù)據(jù)的溢出例3.3 整型數(shù)據(jù)的溢出Main() i
25、nt a,b; a=32767; b=a+1; printf(“%d,%d”,a,b);56ppt課件4、整型數(shù)據(jù)的溢出例3.3 整型數(shù)據(jù)的溢出56ppt課3.3.3 整型常量的類型1、根據(jù)數(shù)值常量所在范圍斷定其類型: 2536,43868,-56892、常量后加u或U,認(rèn)為是unsigned int類型 12354u, -12365u3、常數(shù)后加一個(gè)“l(fā)”或“L”,表示long int 型常量: 126l, 0L, 57ppt課件3.3.3 整型常量的類型1、根據(jù)數(shù)值常量所在范圍斷定其類3.4 實(shí)型數(shù)據(jù)3.4.1 實(shí)型常量的表示方法實(shí)數(shù)又稱為浮點(diǎn)數(shù)1、十進(jìn)制小數(shù)形式 2.36 , .256,
26、0.0,12. 。2、指數(shù)形式 253e3 或 253E3 注意: E,e前必須有數(shù)字,且E,e后必須為整數(shù)。 1.2563e12 為規(guī)范化的指數(shù)形式,以指數(shù)形式打印輸出時(shí),以規(guī)范化形式輸出。58ppt課件3.4 實(shí)型數(shù)據(jù)3.4.1 實(shí)型常量的表示方法58pp3.4.2 實(shí)型變量1、實(shí)型數(shù)據(jù)在內(nèi)存中的存放形式+ | .314159 | 12、實(shí)型變量的分類 (1) float 單精度 (2) double 雙精度 (3) long double 長(zhǎng)雙精度59ppt課件3.4.2 實(shí)型變量1、實(shí)型數(shù)據(jù)在內(nèi)存中的存放形式+ | 3、實(shí)行數(shù)據(jù)的舍入誤差Main() float a,b; a=1234
27、56.789e5; b=a+20; printf(“%f”,b);60ppt課件3、實(shí)行數(shù)據(jù)的舍入誤差60ppt課件3.4.3 實(shí)型常量的類型許多C編譯系統(tǒng)將實(shí)型常量作為雙精度來(lái)處理。 f=2.45678*4523.65 f=2.45678f*4523.65f 一個(gè)實(shí)型常量可以賦給 float, double,long double型變量。根據(jù)變量類型截取相應(yīng)的有效位數(shù)。61ppt課件3.4.3 實(shí)型常量的類型許多C編譯系統(tǒng)將實(shí)型常量作為雙精3.5 字符型數(shù)據(jù)3.5.1 字符常量1、鍵盤可輸入字符常量 a , E, 4, #2、轉(zhuǎn)義字符常量 n ,t,b ,101, x20, , ”例3.5
28、轉(zhuǎn)義字符的使用。Main() printf(“ ab ct derftgn”); printf(“htibbj k”); 62ppt課件3.5 字符型數(shù)據(jù)3.5.1 字符常量62ppt課件3.5.2 字符變量Char c1, c2; c1=a; c2=g;63ppt課件3.5.2 字符變量Char c1, c2;63p3.5.3 字符數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式及其使用方法在所有的編譯系統(tǒng)中都規(guī)定字符以一個(gè)字節(jié)來(lái)存放。1、字符以ASCII碼的形式存儲(chǔ)0110000101100010a 97 b 982、字符數(shù)據(jù)既具有字符型性質(zhì)又具有整數(shù)性質(zhì)64ppt課件3.5.3 字符數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式及其使用
29、方法在所有的 例3 .6 向字符變量賦以整數(shù)Main()char cl,c2; int sum; c1=a; c2=98; sum=c1; printf(“%c %cn”,c1,c2); printf(“%d %dn”,cl,c2); printf(“%c %dn”,sum,sum);65ppt課件 例3 .6 向字符變量賦以整數(shù)65ppt課件例3.7 大小寫字母的轉(zhuǎn)換Main() char c1,c2; c1=a; c2=b c1=c1-32; c2=c2-32; printf(“%c %cn”,c2,c2);運(yùn)行結(jié)果A B66ppt課件例3.7 大小寫字母的轉(zhuǎn)換66ppt課件字符型(cha
30、r)在turbo C中是帶有符號(hào)的 加上不同的修飾符, 可以定義有符號(hào)和無(wú)符號(hào)兩種 類型的字符型變量, 例如: char a: /*a被定義為有符號(hào)字符變量*/ unsigned char l; /*l被定義為無(wú)符號(hào)字符變量*/Char c=130Printf(“%d”,c)得到 -12667ppt課件字符型(char)在turbo C中是帶有符號(hào)的67ppt3.5.4 字符串常量“how do you do.”, “CHINA”, “a”。叫字符串常量。Char c;C=a;是正確的。C=“a”;是錯(cuò)誤的。68ppt課件3.5.4 字符串常量68ppt課件3.6 變量賦初值 int a=3;
31、 float f=3.56; char c=a; int a,b,c=5; int a=b=c=3;69ppt課件3.6 變量賦初值 int a=3;69ppt課件3.7 各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算轉(zhuǎn)換原則:兩個(gè)不同類型數(shù)據(jù)的運(yùn)算,先轉(zhuǎn)換為同一個(gè)高級(jí)類型的數(shù)據(jù)類型后再進(jìn)行運(yùn)算。轉(zhuǎn)換是由機(jī)器自動(dòng)進(jìn)行的。 高 低int char shortunsigned longdoublefloat10+a+ i*f-d/e70ppt課件3.7 各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算轉(zhuǎn)換原則:兩個(gè)不同類型數(shù)3.8 算術(shù)運(yùn)算符和算術(shù)表達(dá)式3.8.1 C運(yùn)算符簡(jiǎn)介1、算術(shù)運(yùn)算符(+ - * / % + -)2、關(guān)系運(yùn)算符(
32、= = = !=)3、邏輯運(yùn)算符(! )、位運(yùn)算( | &)5、賦值運(yùn)算符(=)6、條件運(yùn)算符(? :)71ppt課件3.8 算術(shù)運(yùn)算符和算術(shù)表達(dá)式3.8.1 C運(yùn)算符簡(jiǎn)介1、逗號(hào)運(yùn)算符(,)、指針運(yùn)算符(* &)、求字節(jié)數(shù)運(yùn)算符(sizeof)、強(qiáng)制類型轉(zhuǎn)換運(yùn)算符 (類型)、分量運(yùn)算符(. -)、下標(biāo)運(yùn)算符()、其它運(yùn)算符(如函數(shù)運(yùn)算符);72ppt課件、逗號(hào)運(yùn)算符(,)72ppt課件3.8.2 算術(shù)運(yùn)算符和算術(shù)表達(dá)式1、 基本算術(shù)運(yùn)算符:( + - * / %)例: 3+5 X+y X*y 5/3 “/”兩個(gè)整數(shù)相除結(jié)果為整數(shù)。自動(dòng)舍去小數(shù)部分。 如:5/3=1, -5/3=-1“%”為求
33、余運(yùn)算符,要求兩邊均為整型量。如:5%3=2, -5%3=-2 ,5%(-3)=2 , (-5)%(-3)=-273ppt課件3.8.2 算術(shù)運(yùn)算符和算術(shù)表達(dá)式1、 基本算術(shù)運(yùn)算符: 2、算術(shù)表達(dá)式和運(yùn)算符的優(yōu)先級(jí)與結(jié)合性。 用算術(shù)表達(dá)式和括號(hào)將運(yùn)算對(duì)象連接起來(lái)的,符合C語(yǔ)法規(guī)則的式子稱為算術(shù)表達(dá)式。如: a*b/c-1.5+a運(yùn)算的規(guī)則為:先算*,/,%后算+,- 。 同級(jí)自左至右結(jié)合運(yùn)算。如: a-b+c74ppt課件 74ppt課件3、 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符??梢岳脧?qiáng)制類型轉(zhuǎn)換將一個(gè)表達(dá)式的結(jié)果轉(zhuǎn)換為所需的類型。格式為: (類型名) (表達(dá)式)如: (int)(x+y);(float)a
34、 注意:強(qiáng)制類型轉(zhuǎn)換時(shí),得到一個(gè)所需用類型的中間變量,原來(lái)的變量的類型未發(fā)生改變。 75ppt課件3、 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符。75ppt課件 如:main() float x; int i; x=3.6; i=(int)x; Printf(“x=%f,i=%d)”,x,i); 結(jié)果為: x=3.600000,i=376ppt課件 如:76ppt課件 4、 自增自減運(yùn)算符?!?” “-”如: +i(先加) i+(后加) i-(后減) -i(先減)i=3j=+i 則j=4j=i+ 則 j=3j=i- 則 j=3j=-i 則j=277ppt課件 4、 自增自減運(yùn)算符。77ppt課件注意:1、 自增自減
35、只適用于變量,不適用于常量和表達(dá)式。5+ (x+y)+ 都是不合法的.2 +和的結(jié)合方向?yàn)樽杂蚁蜃蟆?i+ 等價(jià)于 -(i+)78ppt課件注意:2 +和的結(jié)合方向?yàn)樽杂蚁蜃蟆?8ppt課件5、有關(guān)表達(dá)式使用中的問(wèn)題說(shuō)明(1)子表達(dá)式的求值順序各系統(tǒng)不一致 a=f1()+f2(); i=3 (i+)+( i+)+(i+)要得到12 i=3; a=i+; b= i+; c= i+; d=a+b+c;79ppt課件5、有關(guān)表達(dá)式使用中的問(wèn)題說(shuō)明(1)子表達(dá)式的求值順序各系統(tǒng)(2) j+i (j+)+ i , j+(+i)(3) printf(“%d,%d”,i,i+) j=i+; printf(“
36、%d,%d”,j,i)80ppt課件(2) 80ppt課件3.9 賦值運(yùn)算符和賦值表達(dá)式1、賦值運(yùn)算符 “ = ” a=32、類型轉(zhuǎn)換(1) 實(shí)型賦給整型:舍棄小數(shù)部分。 j=3.45; 結(jié)果是j=3;(2) 整型賦給實(shí)型:值不變 ,以實(shí)型存儲(chǔ)。(3)double 型與 float 型間賦值(4)字符型賦給整型:與系統(tǒng)有關(guān)81ppt課件3.9 賦值運(yùn)算符和賦值表達(dá)式1、賦值運(yùn)算符 (5)int,short,long 賦給char型:只取低8位(6)int型與long型間賦值(7)有符號(hào)與無(wú)符號(hào)間的賦值 不同類型間的賦值的原則是:按存儲(chǔ)單元中的存儲(chǔ)形式直接傳送。82ppt課件(5)int,sho
37、rt,long 賦給char型:只取低83. 復(fù)合的賦值運(yùn)算符+=,-=,*=,/=,%=,=,&=, =,|=賦值表達(dá)式:由賦值運(yùn)算符將一個(gè)變量和一個(gè)表達(dá)式連接起來(lái)的式子。 a=(b=5), a=b=c=5, a=5+(c=6), a=(b=10)/(c=2) a+=a-=a*a (a的初值為12) printf(“%d”,a=b);83ppt課件3. 復(fù)合的賦值運(yùn)算符賦值表達(dá)式:由賦值運(yùn)算符將一個(gè)變量和一3.10 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式表達(dá)式1,表達(dá)式2,。,表達(dá)式nx=(a=3,6*3) x=a=3,6*3注意:函數(shù)參數(shù)中的逗號(hào)不是逗號(hào)表達(dá)式84ppt課件3.10 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式
38、84ppt課件第4章 最簡(jiǎn)單的C程序設(shè)計(jì) -順序程序設(shè)計(jì)4.1 C語(yǔ)句概述1、C程序結(jié)構(gòu) C程序可以由若干個(gè)源程序文件組成,一個(gè)源程序可以由若干個(gè)函數(shù)和預(yù)處理命令以及全局變量聲明部分組成,一個(gè)函數(shù)由數(shù)據(jù)定義部分和執(zhí)行語(yǔ)句組成。85ppt課件第4章 最簡(jiǎn)單的C程序設(shè)計(jì) C程序源程序文件1源程序文件2源程序文件n預(yù)處理命令全局變量聲明函數(shù)1函數(shù)n函數(shù)首部函數(shù)體局部變量聲明執(zhí)行語(yǔ)句.86ppt課件C程序源程序文件1源程序文件2源程序文件n預(yù)處理命令全局變量2、 5類C語(yǔ)句(1)控制語(yǔ)句 if () else for () while() do while() continue break switc
39、h goto return87ppt課件2、 5類C語(yǔ)句(1)控制語(yǔ)句87ppt課件(2)函數(shù)調(diào)用語(yǔ)句。 printf(“%d”,a);(3)表達(dá)式語(yǔ)句 a=2 ; j=j+1 ; j+ ; x+y ;(4)空語(yǔ)句 ;(5)復(fù)合語(yǔ)句 88ppt課件(2)函數(shù)調(diào)用語(yǔ)句。(3)表達(dá)式語(yǔ)句(4)空語(yǔ)句 4.2 賦值語(yǔ)句 注意:“=” 是運(yùn)算符。 賦值表達(dá)式的概念是C語(yǔ)言獨(dú)有的特色。4.3 數(shù)據(jù)輸入輸出的概念及在C語(yǔ)言中的實(shí)現(xiàn)*由計(jì)算機(jī)向外部輸出設(shè)備輸出數(shù)據(jù)叫“輸出”。*從外部設(shè)備輸入數(shù)據(jù)叫 “輸入”。*C語(yǔ)言沒(méi)有輸入輸出語(yǔ)句。*使用C函數(shù)必須用預(yù)編譯命令包含有關(guān)的頭文件。#include 或#inc
40、lude “stdio.h”89ppt課件4.2 賦值語(yǔ)句4.3 數(shù)據(jù)輸入輸出的概念及在C語(yǔ)言中4.4 字符數(shù)據(jù)的輸入輸出* Putchar()和getchar()函數(shù)Putchar(c) 向終端輸出一個(gè)字符(包括控制字符和轉(zhuǎn)移字符)。 Getchar()是從終端輸入一個(gè)字符。無(wú)參數(shù)。每一次只接收一個(gè)字符。 90ppt課件4.4 字符數(shù)據(jù)的輸入輸出* Putchar()和g注意:1、在使用這兩個(gè)函數(shù)時(shí),應(yīng)在程序的開(kāi)頭加上包含命令: #include “stdio.h”.2、在執(zhí)行g(shù)etchar()函數(shù)時(shí),雖然是讀入一個(gè)字符,但并不是輸入一字母,該字母就被送入變量的,而是等到輸入完一行后,才將該行的字母送入緩沖區(qū)內(nèi),然后從緩沖區(qū)中取一個(gè)字母送給變量。91ppt課件注意:1、在使用這兩個(gè)函數(shù)時(shí),應(yīng)在程序的開(kāi)頭加上包含命
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村水渠建設(shè)合同范本
- 2023-2024學(xué)年人教版高中信息技術(shù)必修一第二章第三節(jié)《程序設(shè)計(jì)基本知識(shí)》教學(xué)設(shè)計(jì)
- 承包農(nóng)家果園合同范本
- 勞務(wù)住宿合同范本
- 4 公民的基本權(quán)利和義務(wù) 第3課時(shí) 國(guó)家尊重和保障人權(quán)(教學(xué)設(shè)計(jì))2024-2025學(xué)年統(tǒng)編版道德與法治六年級(jí)上冊(cè)
- 7 什么比獵豹的速度更快 教學(xué)設(shè)計(jì)-2024-2025學(xué)年語(yǔ)文五年級(jí)上冊(cè)統(tǒng)編版
- 幕墻玻璃施工合同范本
- 9心中的“110”(教學(xué)設(shè)計(jì))-部編版道德與法治三年級(jí)上冊(cè)
- 9 獵人海力布教學(xué)設(shè)計(jì)-2024-2025學(xué)年五年級(jí)上冊(cè)語(yǔ)文統(tǒng)編版
- Module 1 Unit 1 Food and drinks?(教學(xué)設(shè)計(jì))-2023-2024學(xué)年牛津上海版(試用本)英語(yǔ)五年級(jí)下冊(cè)
- 學(xué)校2025年春季學(xué)期學(xué)校安全工作計(jì)劃+行事歷
- 2024中國(guó)糖果、巧克力制造市場(chǎng)前景及投資研究報(bào)告
- 2023年H3CNE題庫(kù)附答案
- 2024年首都醫(yī)科大學(xué)附屬北京安定醫(yī)院招聘筆試真題
- 【招商手冊(cè)】杭州ICON CENTER 社交娛樂(lè)中心年輕人潮流消費(fèi)創(chuàng)新實(shí)驗(yàn)
- AI一體化智慧校園建設(shè)方案中學(xué)版
- 2025年國(guó)家稅務(wù)總局遼寧省稅務(wù)局系統(tǒng)招聘事業(yè)單位工作人員管理單位筆試遴選500模擬題附帶答案詳解
- 2024年思想道德與政治考試題庫(kù) (單選、多選)
- 《中國(guó)成人白內(nèi)障摘除手術(shù)指南(2023年)》解讀
- 常用消毒劑的分類、配制及使用課件演示幻燈片
- 2025年上半年上饒市上饒縣事業(yè)單位招考(139名)易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
評(píng)論
0/150
提交評(píng)論