版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(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ù)不相同的話(huà)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)稱(chēng)為循環(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ù)字和下劃線(xiàn)組成,其第一個(gè)字符必須為字母或下劃線(xiàn)。
例如: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)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度建筑廢棄物無(wú)害化處理合同書(shū)2篇
- 2025建設(shè)工程合同管理(IV)
- 醫(yī)院地面防滑地坪施工合同
- 2025聘用律師合同
- 建筑材料合同評(píng)審管理辦法
- 醫(yī)療機(jī)構(gòu)廣告施工合同文本格式
- 2025新版合同條件特點(diǎn)與分析
- 2025儀器儀表購(gòu)銷(xiāo)合同范本
- 二零二五年度廣場(chǎng)綠化景觀(guān)照明一體化施工合同3篇
- 2025年度數(shù)字經(jīng)濟(jì)平臺(tái)年薪制與用戶(hù)數(shù)據(jù)安全合同3篇
- 天津市河西區(qū)2024-2025學(xué)年高二上學(xué)期1月期末英語(yǔ)試題(含答案無(wú)聽(tīng)力音頻及聽(tīng)力原文)
- 2025屆高考語(yǔ)文復(fù)習(xí):信息類(lèi)文本五大類(lèi)型的主觀(guān)題 課件
- 中鐵開(kāi)投、中鐵云投招聘筆試沖刺題2025
- 陜西省西安市高新一中2024-2025學(xué)年九年級(jí)上學(xué)期綜合素養(yǎng)評(píng)價(jià)(三)化學(xué)試卷(含答案)
- 2024版健康醫(yī)療服務(wù)機(jī)構(gòu)合作協(xié)議范本3篇
- 公務(wù)車(chē)輛定點(diǎn)加油服務(wù)投標(biāo)文件(技術(shù)方案)
- DB21∕T 3240-2020 芹菜農(nóng)藥安全使用生產(chǎn)技術(shù)規(guī)程
- 科研辦公樓施工組織設(shè)計(jì)
- 向電網(wǎng)申請(qǐng)光伏容量的申請(qǐng)書(shū)
- 1-27屆希望杯數(shù)學(xué)競(jìng)賽初一試題及答案
- 2024-2030年中國(guó)硫磺行業(yè)供需形勢(shì)及投資可行性分析報(bào)告版
評(píng)論
0/150
提交評(píng)論