資源描述:
《最新c語(yǔ)言循環(huán)結(jié)構(gòu)課件ppt.ppt》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、c語(yǔ)言循環(huán)結(jié)構(gòu)C語(yǔ)言的重復(fù)語(yǔ)句用于設(shè)置循環(huán)。循環(huán)是重復(fù)執(zhí)行其他語(yǔ)句的一種語(yǔ)句,循環(huán)中重復(fù)執(zhí)行的語(yǔ)句就是循環(huán)體C語(yǔ)句中,每個(gè)循環(huán)都有一個(gè)控制表達(dá)式。每次執(zhí)行循環(huán)體時(shí)都要對(duì)控制表達(dá)式進(jìn)行計(jì)算。如果表達(dá)式為真,也就是不為零,那么繼續(xù)執(zhí)行循環(huán)。重復(fù)語(yǔ)句2C提供三種循環(huán)語(yǔ)句:while語(yǔ)句:用于判定控制表達(dá)式在循環(huán)體執(zhí)行之前的循環(huán)。do語(yǔ)句:用于判定控制表達(dá)式在循環(huán)體執(zhí)行之后的循環(huán)。for語(yǔ)句:對(duì)于自增或自減計(jì)數(shù)變量的循環(huán)十分方便。重復(fù)語(yǔ)句3雖然循環(huán)體必須是單獨(dú)的一條語(yǔ)句,但這只是個(gè)技術(shù)問(wèn)題。如果需要多條語(yǔ)句,那么只要用一對(duì)大括號(hào)構(gòu)造成單獨(dú)一條復(fù)合語(yǔ)句就可以了
2、:while(i>0){printf("Tminus%dandcounting",i);i--;}即使沒(méi)有嚴(yán)格要求的時(shí)候,一些程序員始終使用大括號(hào)括住循環(huán)體:while(i0){printf("Tminus%dandcounting",i);i--;}整個(gè)過(guò)程持續(xù)到顯示信息為“Tminus1andcounting”。while語(yǔ)句8關(guān)于while語(yǔ)句的一些討論:在while循環(huán)終止時(shí),控制表達(dá)式的值為假。因此,當(dāng)通過(guò)表達(dá)式i>0控制循環(huán)終止時(shí),
3、i必須是小于或等于0的??赡芨静粓?zhí)行while循環(huán)體。因?yàn)榭刂票磉_(dá)式是在循環(huán)體執(zhí)行之前進(jìn)行判定。while語(yǔ)句常??梢杂卸嘀貙?xiě)法。更加簡(jiǎn)明的遞減計(jì)數(shù)循環(huán)如下:while(i>0)printf("Tminus%dandcounting",i--);while語(yǔ)句9如果控制表達(dá)式的值始終是非零值的話(huà),while語(yǔ)句將無(wú)法終止。C語(yǔ)句程序員有時(shí)故意用非零常量作為控制表達(dá)式來(lái)構(gòu)造無(wú)限循環(huán):while(1)…除非循環(huán)體含有跳出循環(huán)控制的語(yǔ)句(break,goto,return)或調(diào)用了導(dǎo)致程序終止的函數(shù),否則上述這種形式的while語(yǔ)句將永遠(yuǎn)執(zhí)行下去。無(wú)
4、限循環(huán)10程序square.c用一個(gè)while語(yǔ)句顯示平方值表格。用戶(hù)指定平方值表格的行數(shù):Thisprogramprintsatableofsquares.Enternumberofentriesintable:5112439416525程序:顯示平方值的表格11square.c/*Printsatableofsquaresusingawhilestatement*/#includeintmain(void){inti,n;printf("Thisprogramprintsatableofsquares.");printf("
5、Enternumberofentriesintable:");scanf("%d",&n);i=1;while(i<=n){printf("%10d%10d",i,i*i);i++;}return0;}12程序sum.c對(duì)用戶(hù)輸入的整數(shù)數(shù)列求和:Thisprogramsumsaseriesofintegers.Enterintegers(0toterminate):8237150Thesumis:107程序需要使用循環(huán),循環(huán)采用scanf函數(shù)讀取用戶(hù)輸入數(shù),然后再把這個(gè)數(shù)加到運(yùn)算的總和中。程序:數(shù)列求和13sum.c/*Sumsaseriesof
6、numbers*/#includeintmain(void){intn,sum=0;printf("Thisprogramsumsaseriesofintegers.");printf("Enterintegers(0toterminate):");scanf("%d",&n);while(n!=0){sum+=n;scanf("%d",&n);}printf("Thesumis:%d",sum);return0;}14例6.3求1到100的和學(xué)生練習(xí)運(yùn)行結(jié)果:5050例6.2求1到100的和#include7、h>voidmain(){inti,sum=0;i=1;while(i<=100){sum=sum+i;i++;}printf(″%d″,sum);}說(shuō)明:(1)循環(huán)體如果包含一個(gè)以上的語(yǔ)句,應(yīng)該用花括弧括起來(lái),以復(fù)合語(yǔ)句形式出現(xiàn).(2)在循環(huán)體中應(yīng)有使循環(huán)趨向于結(jié)束的語(yǔ)句。運(yùn)行結(jié)果:5050do語(yǔ)句的一般格式如下:do語(yǔ)句while(表達(dá)式);執(zhí)行do語(yǔ)句時(shí),先執(zhí)行循環(huán)體,再計(jì)算控制表達(dá)式的值。如果表達(dá)式的值非零,那么再次執(zhí)行循環(huán)體,然后再次計(jì)算表達(dá)式的值。do語(yǔ)句17使用do語(yǔ)句重寫(xiě)前面的“倒數(shù)計(jì)數(shù)”程序:i=10;do{
8、printf("Tminus%dandcounting",i);--i;}while(i>0);do語(yǔ)句