




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
程序設(shè)計(jì)基礎(chǔ)—C語(yǔ)言程序設(shè)計(jì)2016.11第
6講循環(huán)結(jié)構(gòu)程序設(shè)計(jì)-2
上一講內(nèi)容回顧面對(duì)一個(gè)實(shí)際問(wèn)題,如何著手?
上一講內(nèi)容回顧請(qǐng)輸出所有由0-9組成且各位均不相同的三位數(shù)。構(gòu)思:1.是否采用循環(huán)結(jié)構(gòu)2.循環(huán)的初始值3.循環(huán)的結(jié)束條件4.循環(huán)體內(nèi)要做的工作
4.1循環(huán)變量值的改變
4.2判斷條件采用從100開(kāi)始到999結(jié)束加一各位數(shù)不相同的話for(i=100;i<1000;i++)i++(a!=b&&b!=c&&a!=c)
上一講內(nèi)容回顧請(qǐng)輸出所有由0-9組成且各位均不相同的三位數(shù)。#include<stdio.h>voidmain(){inti,a,b,c;
for(i=100;i<1000;i++)
{a=i/100;
b=(i%100)/10;
c=i%10;
if(a!=b&&a!=c&&b!=c)
printf(“%d,”,i);}}并每行顯示五個(gè)數(shù)是否與循環(huán)變量有關(guān)?應(yīng)在哪里加入代碼?
上一講內(nèi)容回顧#include<stdio.h>voidmain(){inti,a,b,c;for(i=100;i<1000;i++)
{a=i/100;
b=(i%100)/10;
c=i%10;
if(a!=b&&a!=c&&b!=c)
printf(“%d,”,i);}}intt;t=0;{printf(“%d,”,i);t++;if(t%5==0)
printf(“\n”);}
上一講內(nèi)容回顧貪吃的猴子猴子摘了許多桃子,第一天就吃了一半的桃子,不過(guò)癮,又多吃了一個(gè);第二天起床,又吃了剩下的桃子的一半,不過(guò)癮,又多吃了一個(gè);......;到第十天早上起床,發(fā)現(xiàn)就只有一個(gè)桃子了,請(qǐng)問(wèn)猴子第一天一共摘了多少個(gè)桃子?
上一講內(nèi)容回顧貪吃的猴子。構(gòu)思:1.是否采用循環(huán)結(jié)構(gòu)2.循環(huán)的初始值3.循環(huán)的結(jié)束條件4.循環(huán)體內(nèi)要做的工作
4.1循環(huán)變量值的改變
4.2判斷條件循環(huán)結(jié)構(gòu)程序設(shè)計(jì)本講
要點(diǎn)循環(huán)的嵌套break和continue語(yǔ)句goto語(yǔ)句程序舉例
C語(yǔ)言及算法概述程序的靈魂-算法Algorithm循環(huán)的嵌套循環(huán)結(jié)構(gòu)程序設(shè)計(jì)一個(gè)循環(huán)體內(nèi)又包含另一個(gè)完整的循環(huán)結(jié)構(gòu)稱為循環(huán)的嵌套。
內(nèi)嵌的循環(huán)中還可以嵌套循環(huán),這就是多層循環(huán)。三種循環(huán)(while循環(huán)、do-while循環(huán)和for循環(huán))可以互相嵌套。循環(huán)結(jié)構(gòu)程序設(shè)計(jì)下面幾種都是合法的形式:(1)
while()(2)do(3)for(;;){…{…{
while()dofor(;;)
{…}{…}{…}}while();}
}while();
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(4)
while()(5)for(;;)(6)do{…{…{…do{…}while()for(;;){}while();{}
…{…}…}}}while();
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)哪些情況要使用循環(huán)的嵌套?
上次的例子.輸出100-1000范圍內(nèi)所有質(zhì)數(shù)。取值范圍:外面一層的循環(huán)判斷質(zhì)數(shù):內(nèi)部一層的循環(huán)循環(huán)結(jié)構(gòu)程序設(shè)計(jì)上次的例子.輸出100-1000范圍內(nèi)所有質(zhì)數(shù)。inti,j;
for(i=100;i<1000;i++)
{
for(j=2;j<=sqrt(i);j++){if(i%j==0)
j=i;
}
if(j!=i)
printf(“%d”,i);}因?yàn)橛袃蓪友h(huán),所以有兩個(gè)循環(huán)變量i和j!循環(huán)結(jié)構(gòu)程序設(shè)計(jì)哪些情況要使用循環(huán)的嵌套,要使用幾層循環(huán)?
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)袋子里有3個(gè)紅球,5個(gè)白球,6個(gè)綠球,現(xiàn)在任意取出8個(gè)球,要求其中至少有1個(gè)白球,輸出所有可能的取法。
x+y+z=8并且0<=x<=3,1<=y<=5,0<=z<=6
三個(gè)取值范圍:三層循環(huán)嵌套!循環(huán)結(jié)構(gòu)程序設(shè)計(jì)
x+y+z=8并且0<=x<=3,1<=y<=5,0<=z<=6intx,y,z,i;i=1;//第幾種取法for(x=0;x<4;x++)for(y=1;y<6;y++)for(z=0;z<7;z++)
{
if((x+y+z)==8)printf(“第%d種取法:紅%d,白%d,綠%d\n”,i++,x,y,z);}
C語(yǔ)言及算法概述程序的靈魂-算法Algorithm幾種語(yǔ)句循環(huán)結(jié)構(gòu)程序設(shè)計(jì)breakcontinue今天學(xué)習(xí):goto
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)break語(yǔ)句
break語(yǔ)句可以用來(lái)從循環(huán)體內(nèi)跳出循環(huán)體,即提前結(jié)束循環(huán),接著執(zhí)行循環(huán)下面的語(yǔ)句一般形式:
break;注意:break語(yǔ)句不能用于循環(huán)語(yǔ)句和switch語(yǔ)句之外的任何其他語(yǔ)句中。
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)例:floatpi=3.14159;intarea,r;for(r=1;r<=10;r++)
{area=pi*r*r;if(area>100)break;
printf(″r=%f,area=%f\n″,r,area);}
程序的作用是計(jì)算r=1到r=10時(shí)的圓面積,直到面積area大于100為止。從上面的for循環(huán)可以看到:
當(dāng)area>100時(shí),執(zhí)行break語(yǔ)句,提前結(jié)束循環(huán),即不再繼續(xù)執(zhí)行其余的幾次循環(huán)。
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)continue語(yǔ)句
作用為結(jié)束本次循環(huán),即跳過(guò)循環(huán)體中下面尚未執(zhí)行的語(yǔ)句,接著進(jìn)行下一次是否執(zhí)行循環(huán)的判定.一般形式:
continue;
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)例.把100-200之間的不能被3整除的數(shù)輸出。
#include<stdio.h>
voidmain()
{intn;
for(n=100;n<=200;n++)
{
if(n%3==0)
continue;
printf("%d,″,n);
}
}
若改成break;呢?
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)continue語(yǔ)句和break語(yǔ)句的區(qū)別:
continue語(yǔ)句只結(jié)束本次循環(huán),而不是終止整個(gè)循環(huán)的執(zhí)行。
break語(yǔ)句則是結(jié)束整個(gè)循環(huán)過(guò)程,不再判斷執(zhí)行循環(huán)的條件是否成立。
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)continue語(yǔ)句和break語(yǔ)句的區(qū)別:
while(存款<首付){
打工;
存錢(qián);
買(mǎi)彩票;}買(mǎi)房;
while(存款<首付){
打工;
存錢(qián);
買(mǎi)彩票;if(中了500W)
break;}買(mǎi)房;
?
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)continue語(yǔ)句和break語(yǔ)句的區(qū)別:
while(錢(qián)沒(méi)花完){
搜索物品;
選擇賣(mài)家;
放進(jìn)購(gòu)物車(chē);}結(jié)賬;
while(錢(qián)沒(méi)花完){
搜索物品;
選擇賣(mài)家;
查看是否包郵;if(不包郵)
continue;
放進(jìn)購(gòu)物車(chē);}結(jié)賬;
?循環(huán)結(jié)構(gòu)程序設(shè)計(jì)上次的例子.輸出100-1000范圍內(nèi)所有質(zhì)數(shù)。inti,j;
for(i=100;i<1000;i++)
{
for(j=2;j<=sqrt(i);j++){if(i%j==0)
j=i;
}
if(j!=(i+1))
printf(“%d”,i);}
inti,j;
for(i=100;i<1000;i++)
{
for(j=2;j<=sqrt(i);j++){if(i%j==0)
break;
}if(j>sqrt(i))
printf(“%d”,i);}
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)goto語(yǔ)句為無(wú)條件轉(zhuǎn)向語(yǔ)句,它的一般形式為
goto語(yǔ)句標(biāo)號(hào);語(yǔ)句標(biāo)號(hào)用標(biāo)識(shí)符表示,它的命名規(guī)則與變量名相同,即由字母、數(shù)字和下劃線組成,其第一個(gè)字符必須為字母或下劃線。
例如:gotolabel_1;合法;
goto123;不合法.
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)
結(jié)構(gòu)化程序設(shè)計(jì)方法主張限制使用goto語(yǔ)句,因?yàn)闉E用goto語(yǔ)句將使程序流程無(wú)規(guī)律、可讀性差.一般來(lái)說(shuō),可以有兩種用途:(1)與if語(yǔ)句一起構(gòu)成循環(huán)結(jié)構(gòu);(2)從循環(huán)體中跳轉(zhuǎn)到循環(huán)體外。
但是這種用法不符合結(jié)構(gòu)化原則,一般不宜采用,只有在不得已時(shí)(例如能大大提高效率)才使用.
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)例.用if語(yǔ)句和goto語(yǔ)句構(gòu)成循環(huán),求1到100的和
voidmain()
{inti,sum=0;
i=1;
loop:if(i<=100)
{
sum=sum+i;
i++;
gotoloop;
}
printf("%d\n″,sum);
}
C語(yǔ)言及算法概述程序的靈魂-算法Algorithm循環(huán)結(jié)構(gòu)程序舉例(important)
循環(huán)結(jié)構(gòu)程序設(shè)計(jì)例1.
輸出九九乘法表。inti,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 石家莊工程職業(yè)學(xué)院《管理系統(tǒng)工程》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇省蘇州市常熟市2024-2025學(xué)年六年級(jí)下學(xué)期小升初數(shù)學(xué)考前押題卷含解析
- 上海大學(xué)市北附屬中學(xué)2025年高考信息卷語(yǔ)文試題含解析
- 黑龍江省牡丹江管理局北斗星協(xié)會(huì)達(dá)標(biāo)名校2025屆下學(xué)期初三語(yǔ)文試題第一次質(zhì)量檢測(cè)試題考試試卷含解析
- 山東省棗莊八中東校2024-2025學(xué)年高三第二次質(zhì)量監(jiān)測(cè)物理試題含解析
- 永善縣2025屆三下數(shù)學(xué)期末經(jīng)典模擬試題含解析
- 期河南省南陽(yáng)市南召縣達(dá)標(biāo)名校2024-2025學(xué)年初三二模沖刺(二)英語(yǔ)試題試卷含答案
- 江蘇省高郵市重點(diǎn)名校2025屆初三5月模擬(三模)生物試題理試題含解析
- 2024北京二中初二(下)期中數(shù)學(xué)試題及答案
- 第6課+全球航路的開(kāi)辟(教學(xué)設(shè)計(jì))-2024-2025學(xué)年高一下學(xué)期統(tǒng)編版(2019)必修中外歷史綱要下
- 期貨交易基礎(chǔ)知識(shí)單選題100道及答案
- 高二生物-2025-2025學(xué)年高二年級(jí)下冊(cè)期中生物試卷
- 第19課 清朝君主專制的強(qiáng)化-2024-2025學(xué)年七年級(jí)歷史下冊(cè)互動(dòng)課堂教學(xué)設(shè)計(jì)寶典
- 2 含有兩級(jí)的混合運(yùn)算(教學(xué)設(shè)計(jì))-2023-2024學(xué)年二年級(jí)下冊(cè)數(shù)學(xué)人教版
- 天然氣工程施工組織設(shè)計(jì)方案
- 電機(jī)與電氣控制技術(shù)(第3版)(微課版)(AR版)授課計(jì)劃
- 實(shí)驗(yàn)活動(dòng)7 粗鹽中難溶性雜質(zhì)的去除課件-2024-2025學(xué)年人教版化學(xué)九年級(jí)下冊(cè)
- 2025年開(kāi)封大學(xué)單招職業(yè)技能測(cè)試題庫(kù)必考題
- 班級(jí)管理措施與學(xué)生心理健康
- 高中主題班會(huì) 揚(yáng)中國(guó)精神承青年擔(dān)當(dāng)團(tuán)課課件-高一上學(xué)期愛(ài)國(guó)主義教育主題班會(huì)
- 《淋巴瘤基礎(chǔ)知識(shí)》課件
評(píng)論
0/150
提交評(píng)論