《C語(yǔ)言教程第4章》課件_第1頁(yè)
《C語(yǔ)言教程第4章》課件_第2頁(yè)
《C語(yǔ)言教程第4章》課件_第3頁(yè)
《C語(yǔ)言教程第4章》課件_第4頁(yè)
《C語(yǔ)言教程第4章》課件_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第4章最簡(jiǎn)單的C程序設(shè)計(jì)

-順序程序設(shè)計(jì)1精選課件4.1C語(yǔ)句概述分五類:1、空語(yǔ)句;(考點(diǎn))

空語(yǔ)句也可用作循環(huán)語(yǔ)句中的循環(huán)體,表示循環(huán)體什么也不做。這一點(diǎn)將在第6章詳細(xì)講解。2精選課件2、9種控制語(yǔ)句if()~else~條件語(yǔ)句for()~循環(huán)語(yǔ)句while()~循環(huán)語(yǔ)句do~while()循環(huán)語(yǔ)句continue結(jié)束本次循環(huán)語(yǔ)句break終止執(zhí)行switch或循環(huán)語(yǔ)句switch多分支選擇語(yǔ)句goto轉(zhuǎn)向語(yǔ)句return從函數(shù)返回語(yǔ)句3精選課件3、函數(shù)調(diào)用語(yǔ)句max(a,b);4、表達(dá)式語(yǔ)句x>y;a=x+y;5、復(fù)合語(yǔ)句又稱分程序{}例:main(){inta,b,c;…{z=x+y;t=z/100;printf(“%f”,t);}…}4精選課件4.2賦值語(yǔ)句賦值表達(dá)式后加分號(hào),即為賦值語(yǔ)句。這一節(jié)不用管。a=3;5精選課件4.3數(shù)據(jù)輸入輸出的概念及在C語(yǔ)言中的實(shí)現(xiàn)1、C語(yǔ)言本身并不提供輸入輸出語(yǔ)句(即沒(méi)有關(guān)鍵字的功能是用于I/O的),輸入與輸出是由C函數(shù)庫(kù)中的函數(shù)來(lái)實(shí)現(xiàn)的。2、C語(yǔ)言提供了六個(gè)標(biāo)準(zhǔn)I/O函數(shù):putcharputsprintfgetchargetsscanf6精選課件3、在使用以上六個(gè)庫(kù)函數(shù)時(shí),要用預(yù)編譯命令#include<stdio.h>,將頭文件包含到用戶源程序文件中。4、由于printf與scanf函數(shù)使用頻率很高,所以系統(tǒng)允許在使用這兩個(gè)函數(shù)時(shí)不加#include<stdio.h>7精選課件4.4字符數(shù)據(jù)的輸入輸出4.4.1putchar函數(shù)格式:putchar(c);作用:向終端(顯示器)輸出一個(gè)字符。其中,c是字符常量與變量,或整型常量與變量。8精選課件#include<stdio.h>main(){chara=‘A’;intb=65;putchar(a);putchar(‘\n’);putchar(b);putchar(‘\12’);putchar(65);putchar(‘\xa’);putchar(‘A’);putchar(‘\n’);putchar(‘\101’);putchar(‘\n’);putchar(‘\x41’);putchar(‘\n’);}運(yùn)行回憶表格9精選課件4.4.2getchar函數(shù)格式:getchar();(括號(hào)內(nèi)無(wú)參數(shù))作用:從終端(鍵盤)輸入一個(gè)字符(只能接收一個(gè)字符)10精選課件例4.2輸入單個(gè)字符#include<stdio.h>main(){charc;c=getchar();putchar(c);}main(){putchar(getchar());}運(yùn)行11精選課件4.5格式輸入與輸出4.5.1printf函數(shù)(格式輸出函數(shù))格式:printf(格式控制,輸出表列)作用:輸出任何類型的多個(gè)數(shù)據(jù)括號(hào)內(nèi)包括兩部分:格式控制、輸出表列12精選課件(1)格式控制①格式說(shuō)明,由%和格式字符組成如:%f,%d②普通字符,即需要原樣輸出的如:printf(“a=%d,b=%f\n”,a,b);13精選課件(2)輸出表列即需要輸出的一些數(shù)據(jù),可以是表達(dá)式如:printf(“%f,%d,%s\n”,a+b,c,“hello”);14精選課件2、格式字符在輸出時(shí),不同類型的數(shù)據(jù)嚴(yán)格按照不同的格式字符。15精選課件(1)d格式。用來(lái)輸出十進(jìn)制整數(shù)以輸出整數(shù)12345為例①%d12345②%8d□□□12345③%3d12345④%-8d12345□□□⑤%+8d□□+1234516精選課件⑥%08d00012345⑦%-08d12345□□□⑧%+08d+0012345再以輸出整數(shù)-12345為例①%8d□□-12345②%+8d□□-12345③%08d-0012345④%+08d-001234517精選課件%ld格式。用來(lái)輸出十進(jìn)制長(zhǎng)整型。對(duì)于%d成立的格式,對(duì)于%ld也成立。18精選課件*****(2)o、x、u格式以八進(jìn)制、十六進(jìn)制和無(wú)符號(hào)數(shù)形式輸出。提前處理:-2在內(nèi)存中的二進(jìn)制形式:原:1000000000000010反:1111111111111101補(bǔ):111111111111111019精選課件四位分組:1111111111111110fffe三位分組:1111111111111110177776若看作無(wú)符號(hào)數(shù),則為65534(65535為全1)。20精選課件無(wú)符號(hào)數(shù)65535在內(nèi)存中的二進(jìn)制形式:1111111111111111若將其看作有符號(hào)數(shù),則其為補(bǔ)碼,十進(jìn)制-1。補(bǔ):1111111111111111反:1111111111111110原:100000000000000111111111111111111111111111111111ffff17777721精選課件*****main(

){unsigneda=65535;intb=-2;printf("a=%d,%o,%x,%u\n",a,a,a,a);printf("b=%d,%o,%x,%u\n",b,b,b,b);}運(yùn)行結(jié)果:a=-1,177777,ffff,65535

b=-2,177776,fffe,65534

22精選課件main(

){unsigneda=65535;printf("a=%o,%#o\n",a,a);printf(“a=%x,%#x\n",a,a);printf(“a=%X,%#X\n",a,a);}運(yùn)行結(jié)果:a=177777,0177777

a=ffff,0xffffa=FFFF,0XFFFF

23精選課件(3)c格式main(){charc='a';inti=97;printf("%3c\n",c);printf("%-3c\n",i);}運(yùn)行結(jié)果:□□aa□□24精選課件4、s格式用來(lái)輸出字符串。以輸出字符串“abcde”為例。①%sabcde②%8s□□□abcde③%-8sabcde□□□④%3sabcde⑤%6.2s□□□□ab⑥%-6.2sab□□□□⑦%.2sab25精選課件5、f格式用來(lái)輸出實(shí)型數(shù)(float與double)。在默認(rèn)情況下輸出六位小數(shù)。以輸出實(shí)型數(shù)123.458為例。①%f123.458000②%12f□□123.458000③%-12f123.458000□□④%8f123.45800026精選課件⑤%8.2f□□123.46四舍五入⑥%-8.2f123.46□□⑦%.2f123.4627精選課件在輸出float與double時(shí),注意有效位(7位、16位)main(){floatx=111111.111,y=222222.222;doublem=111111111111111.11111,n=222222222222222.22222;printf(“%f\n%f”,x+y,m+n);}結(jié)果為:333333.328125

333333333333333.31200028精選課件6、e格式以指數(shù)形式輸出實(shí)數(shù)。系統(tǒng)默認(rèn)輸出六位小數(shù)。以輸出實(shí)型數(shù)123.458為例。①%e1.234580e+002②%13.4e□□1.2346e+002四舍五入③%-13.4e1.2346e+002□□④%.4e1.2346e+002⑤%E1.234580E+00229精選課件7、g格式自動(dòng)選f或e格式(選擇輸出時(shí)占寬度較小的一種)輸出實(shí)型數(shù),且不輸出無(wú)意義的零。以輸出實(shí)型數(shù)f=123.468為例。printf(“%f,%e,%g”,f,f,f);123.468000,1.234680e+002,123.46810列13列30精選課件8、用兩個(gè)%可輸出一個(gè)%。printf(“%f%%”,1.0/3);結(jié)果為0.333333%。31精選課件9、若輸出項(xiàng)比格式字符多,則右側(cè)多出的輸出項(xiàng)將不予輸出。若格式字符比輸出項(xiàng)多,則多出的格式字符將會(huì)對(duì)應(yīng)出一個(gè)隨機(jī)數(shù)。3,53,5,2077inta=3,b=5,c=7;printf(“%d,%d”,a,b,c);printf(“%d,%d,%d”,a,b);32精選課件10、printf函數(shù)有返回值,為格式控制部分包含字符的個(gè)數(shù)。如,a=printf(“xyz”);則a的值為3b=printf(“xyz\n”);則b的值為4c=printf(“a=%d\n”,a);則c的值為433精選課件4.5.2scanf函數(shù)(格式輸入函數(shù))格式:scanf(格式控制,地址表列)作用:輸入任何類型的多個(gè)數(shù)據(jù)格式控制同printf函數(shù)基本相同34精選課件1、輸入表列應(yīng)當(dāng)是變量地址,而不是變量名。2、格式控制中的普通字符,應(yīng)照原樣輸入如:scanf(“a=%d,b=%f”,&a,&b);輸入時(shí)鍵入:a=5,b=3.33、雙精度型數(shù)據(jù)用%lf,不能用%f。4、輸入時(shí)不能規(guī)定精度,如以下寫法是錯(cuò)誤的scanf(“%7.2f”,&a);35精選課件5、輸入形式(1)scanf("%d%d%d",&a,&b,&c);輸入:345或345或3(按Tab鍵)4(按Tab鍵)5或空格、回車、Tab鍵的組合。(2)scanf("%3d%2d%3d",&a,&b,&c);運(yùn)行時(shí)若輸入:123456789,則a、b、c的值分別為123、45、678。36精選課件(3)scanf(“%3d%*2d%3d”,&a,&b);若輸入123456789,則a的值為,b的值為。*表示跳過(guò)指定的列數(shù)。(4)scanf("%c%c%c",&a,&b,&c);若想使a、b、c的值為A、B、C,則運(yùn)行時(shí)輸入ABC,而不能輸入ABC。因?yàn)檫@會(huì)使a、b、c的值為A、、B12367837精選課件(5)scanf("%3c%2c%3c",&a,&b,&c);運(yùn)行時(shí)若輸入:ABCDEFGHIJK,則a、b、c的值分別為(6)scanf("%d%c%f",&a,&b,&c);若想使a、b、c的值為12、A、3.4,則運(yùn)行時(shí)輸入12A3.4,而不能輸入12A3.4。A、D、F。38精選課件例4.10輸入三角形的三個(gè)邊長(zhǎng),求三角形面積公式:area=s(s-a)(s-b)(s-c)其中:s=(a+b+c)/239精選課件#include<math.h>main(){floata,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("area=%7.2f\n",area);}40精選課件問(wèn)題:

該程序并非一個(gè)完美的程序,因?yàn)橛锌赡苡脩糨斎氲娜呏禈?gòu)不成三角形,例如1,2,3。不過(guò)這個(gè)問(wèn)題將會(huì)在學(xué)習(xí)完第6章后解決。41精選課件練習(xí):求ax2+bx+c=0的根。其中a、b、c由鍵盤輸入。X=42精選課件#include<math.h>main(){floata,b,c,d,x1,x2;scanf("%f,%f,%f",&a,&b,&c);d=sqrt(b*b-4*a*c);x1=(-b+d)/(2*a);x2=(-b-d)/(2*a);printf(“x1=%f,x2=%f\n"

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論