C語言第五講._第1頁
C語言第五講._第2頁
免費預(yù)覽已結(jié)束,剩余18頁可下載查看

下載本文檔

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

文檔簡介

1、本講主要內(nèi)容使用switch應(yīng)注意的問題使用switch應(yīng)注意的問題Switch (i)恰當(dāng)句, 可以控制一段程 序的執(zhí)行入口點,如左邊的程序所示。i二Q時,執(zhí)行語句巴、語句副iHB時 ,執(zhí)行語句圜; 時,執(zhí)行語句H、 語句創(chuàng)、語句師ivl&且i胃時,執(zhí)行 語句鳥。Switchcase國:語句1;break;case b:break;casec, :語句2;break;default:語句3;若對于switch表達(dá)式的某值不需執(zhí)行任何操作,相應(yīng)的case子句可以是一個空語句。如左邊程序所示:使用switch應(yīng)注池的問題for語句般形式:非0時執(zhí)行循環(huán)體可以是復(fù)合語句Switch(c)

2、case1:case不能寫成:case 1, 2, 3:語句break若對于switch表達(dá)式的 多個值都需要執(zhí)行相同I的操作時,可以釆用左1邊程序的語句形式分組(表循每次執(zhí)行完循環(huán)體后求解for語句編程:求1-1/2+1/3-1/4+.+1/99-1/100的值main()intj,fh;floatsum;sum=0;fh=-l;for(j=l;j=100;j+)for語句執(zhí)行過程的流程圖:甸fh=-fh;sum=sum+fh*(l/(floa切);printf(usum=%fn,sum);f or語句-注意事項 for語句的任何一個表達(dá)式都可以省,但不 能省略分號”。例如:省略表達(dá)式2時,

3、循環(huán)將變成死循環(huán)。f Of語句-注意事項 for語句中可應(yīng)用逗號表達(dá)式,使兩個或多個控制 變量同時控制循環(huán)。例如:for( i=0 j=10;ij;i+j-)循環(huán)體C語言的for語句允許在循環(huán)體內(nèi)改變循環(huán)控 制變量的值。例如:sum=0;for(count=l;count=100;count+) scanf(u%d9&number);suii+=iiuinber;省略省略表達(dá)式31=1;for ( ;i=3000) count=100 ;while語句般形式:while(表達(dá)式)執(zhí)行過程:先計算表達(dá)式的值,當(dāng)表達(dá)式的值為非0時執(zhí)行語句;為0時執(zhí)行循環(huán)的后 繼實現(xiàn)“當(dāng)型”循while語句

4、可以是復(fù)合語句,其中必須含有改變條件表達(dá)式值的語句(do-wh i 1 e語句可以是復(fù)合語句,其中必須 含有改變條件表達(dá)式值的語 句執(zhí)行過程:先執(zhí)行語句,后判斷條件。表達(dá)式的值為非0時,繼續(xù)執(zhí)行語句;表達(dá)式的值為0時,執(zhí)行循環(huán)的后繼。do while語句實例:求營n的值。main ()n=i int n, sura=0;n=l;dosumsum+n;n+; while (n=100)若在do語句前插入一個語句:scanf(u%d,&x);并把語句:while (n=100)改為while(n=x),修改后程序的功能是 求:_, printf語句應(yīng)作哪些相應(yīng)修改?printf (641-

5、100的累加和為d”,sum) ;修改成:float sum9ii=I 0;sum=sum+l/n可求1+1/2+1/3+ . +1/100的值。-般形式:do語句 -wh訂e與do-wh訂e的比較:M;)do for(;)while()-個循環(huán)體內(nèi)又包含循環(huán)結(jié)構(gòu)稱為循環(huán)嵌套。內(nèi)層 本中再包含新循環(huán)結(jié)構(gòu)稱為多重循環(huán)嵌套。例如:while語句是先計算表達(dá)式的值,當(dāng)表達(dá) 的值為非0時執(zhí)行語句,為0時執(zhí)行循環(huán)的 繼。語句可能一次也不執(zhí)行。dowhile語句是先執(zhí)行語句,后判斷條o表達(dá)式的值為非0時,繼續(xù)執(zhí)行語句;表 式的值為0時,執(zhí)行循環(huán)的后繼。語句至少 行一次。while();while()dow

6、hile();c語言中三種循環(huán)結(jié)構(gòu)可以任意嵌套。實例:打印由號組成的三角形。main() int k=l,j;while(k=7) j=l;while(j=k) printf(*”); j+;printf(“n”);k+;多重循環(huán)的執(zhí)行過程為: 外循環(huán)跨一步,內(nèi)循環(huán)轉(zhuǎn)一圈k=l時,j=l輸出1個*號k=2時,j=l2輸出2個*號k=3時,j=l3輸出3個*號k=4時,j=l4輸出4個*號輸break語句實例:sum=0;for( c=l ;c= 3000) break; corrtinue語句實例:for ( j=l;j=n;j+)scanf(“f”,&a); if (a00)cont

7、inue;注:該循環(huán)只處理正實數(shù)。break語句使程序從循環(huán) 體內(nèi)和switch語句內(nèi)跳出, 繼續(xù)執(zhí)行邏輯 上的下一條語 句。不能用在 別處。航循,是一判語次行行下的ue本執(zhí)進(jìn)行環(huán)in束的著執(zhí)循。nt結(jié)環(huán)接否次斷OCgoto語句while、do-wh訂e循環(huán),只在wh訂e后面指定 循環(huán)條件,所以在循環(huán)體中應(yīng)包含改變循環(huán)條件 而for的表達(dá)式3中已包含使循環(huán)趨于結(jié) 束的操作。用while和do-while循環(huán)時,循環(huán)變量初始化的操作應(yīng)在while和do-while語句之前完成。而for語句可以在表達(dá)式1中實現(xiàn)循環(huán)變 量初始化。一般形式:goto標(biāo)號;實例:main ()不能轉(zhuǎn)向個結(jié)構(gòu)內(nèi) inti

8、=l,su功胄丟使控制無條件轉(zhuǎn)向標(biāo)號所指定的語句處并開始往下一步執(zhí)行。i+;gotoloop:printf(u%d9sura);幾while、for理般情況下它們可以互相代替o幾種詬環(huán)的比較 Whi le和f or是先判斷表達(dá)式,后執(zhí)行語句。而dowhile循環(huán)是先執(zhí)行語句,后判斷表達(dá)式。對wh訂e、do-while和for循環(huán),都可以用break語句跳出循環(huán),用cont imie語旬結(jié)束本次循環(huán)。 for循環(huán)比較適合循環(huán)次數(shù)為已知的情況。不能用goto跳到循環(huán)內(nèi)。應(yīng)用舉例編程;求3至100/include math.h間的全部素數(shù)。main()(素數(shù)只能被1和int m,k3n=0;它本身整

9、除。判for (m=3; m 100; m+=2)斷是否是素數(shù)的if(n%10=0)printf(wn”) );方法:當(dāng)能被2k=sqrt(m);到的平方根之間for(i=2;i=k+l)是素數(shù);否則printf(w%d ,m);n+; 就是。)#inclu編程:從鍵盤上連續(xù)輸 入字符,并統(tǒng)計其中大 寫字母的個數(shù),直到輸 入字符結(jié)束。if(chiA,&chvi/)sum+; -是大寫字母就計數(shù)#include stdio.h”main()int i,data=0; char c;for (i=0 ;i4 ;i+)while(l) X編程:輸入4個數(shù) 字字符,并把其 轉(zhuǎn)換為4位十進(jìn)制 整數(shù)后顯示出來。輸入是數(shù)字字符就結(jié)束循環(huán)把輸入的數(shù)字字符變成數(shù)字再組成一個4位數(shù)data=data*10+c-,0,;printf(udata=%dn5data);運行編程: 將2000至3000年之間的閏年 年號顯示出來。printf(442000至3000年號中是閏

溫馨提示

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

最新文檔

評論

0/150

提交評論