版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第六章循環(huán)結(jié)構(gòu)程序設(shè)計第1節(jié)循環(huán)程序的設(shè)計步驟如:a=123則輸出順序為:printf("%d",a%10);a=a/10;printf("%d",a%10);a=a/10;printf("%d",a%10);a=a/10;例:逆序輸出一個不超過4位的正整數(shù)。Inputaa<10bit=1a<100bit=2a<1000bit=3bit=4main(){ inta,bit; scanf("%d",&a); if(a<10) bit=1; else if(a<100) bit=2; else if(a<1000) bit=3; else bit=4;;/*按題目要求輸出結(jié)果*/}switch(bit) { case4:printf("%d",a%10);a=a/10; case3:printf("%d",a%10);a=a/10; case2:printf("%d",a%10);a=a/10; case1:printf("%d",a%10);a=a/10; default:; }1.while語句一般形式:while(表達式)
循環(huán)體語句執(zhí)行流程:pa假(0)真(非0)whilepAP,用邏輯量表示while(x=1)x=10;單條語句s=0;i=1;while(i<=100)s+=i++;/*i=0;while(i++<100)s+=i;*//*i=0;while(++i<=100)s+=i;*/x=10;while(x-->0);第2節(jié)實現(xiàn)循環(huán)的三條語句main(){ intx,i; i=0;while(i<10) { scanf("%d",&x); if(x<0)x=-x; printf("%8d",x); i++; }printf("\n");}2.do~while語句一般形式:do
循環(huán)體語句
while(表達式);執(zhí)行流程:doAp假(0)真(非0)whileAp;必比可少do{循環(huán)體語句}while(表達式);s=0;i=1;do{s+=i++;}while(i<=100);/*i=1;do{s+=i;}while(i++<100);*//*i=1;do{s+=i;}while(++i<=100);*/main(){ intx,i; i=0;do { scanf("%d",&x); if(x<0)x=-x; printf("%8d",x); i++; }while(i<10);printf("\n");}x=10;do{;}while(x-->0);3.for語句一般應(yīng)用形式:for(expr1;expr2;expr3)
循環(huán)體語句expr2A假(0)真(非0)expr1expr3Aexpr1;expr2;expr3循環(huán)變量賦初值循環(huán)條件循環(huán)趨于結(jié)束部分例用for循環(huán)求
main(){inti,sum=0;for(i=1;i<=100;i++)sum+=i;printf("%d",sum);}main(){ intx,i; for(i=0;i<10;i++) { scanf("%d",&x); if(x<0)x=-x; printf("%8d",x); }printf("\n");}說明:for語句中expr1,expr2,expr3類型任意,都可省略,但分號;不可省無限循環(huán):for(;;)for語句可以轉(zhuǎn)換成while結(jié)構(gòu)關(guān)鍵是體現(xiàn)三要素expr1;while(expr2){
循環(huán)體語句
expr3;}for(s=0,i=100;i;s+=i--);i=1;for(;i<=100;i++)s+=i;i=1;for(;i<=100;)s+=i++;while(i<=100)s+=i++;
main(){intm,n,r;scanf("%d,%d",&m,&n);if(m<n)r=m,m=n,n=r;r=m%n;while(r!=0){m=n;n=r;r=m%n;}printf("%d\n",n);}
main(){intm,n,r;scanf("%d,%d",&m,&n);if(m<n)r=m,m=n,n=r;do{r=m%n;m=n;n=r;}while(r!=0);printf("%d\n",m);}
for(r=m%n;r!=0;r=m%n)/*for(;(r=m%n);){m=n;n=r;}printf("%d\n",n);
例:求最大公約數(shù)?main(){floatfac;inti,n;fac=1;i=2;scanf("%d",&n);while(i<=n)/*i++<=n*/{fac=fac*i;i++;
}printf("n!=%.0f\n",fac);}main(){floatfac;inti,n;i=1;fac=1;scanf("%d",&n);do{fac=fac*i;i++;}while(i<=n);printf("n!=%.0f\n",fac);}for(fac=1,i=1;i<=n;i++)fac=fac*i;printf("n!=%.0f\n",fac);例:求n!
#include"stdio.h"main(){inta=0;charc;for(c=getchar();c!='\n';c=getchar())/*while((c=getchar())!='\n\')*/ a=10*a+c-'0';printf("%d\n",a);}例:構(gòu)造整數(shù)?main(){intm;scanf("%d",&m);while(m){printf("%d",m%10);m=m/10;}printf("\n");}例梯形法求數(shù)值積分0yaxa+hxx+hbf(x)s=(sqrt(4-x*x)+sqrt(4-(x+h)*(x+h)))*h/2;#include"math.h"main(){ floata,b,s=0,sum=0,h,x; scanf("%f,%f,%f",/&a,&b,&h); for(x=a;x<b;x+=h) { s=(sqrt(4-x*x)+sqrt/(4-(x+h)*(x+h)))*h/2;sum+=s; } printf("%f\n",sum);}
1.break語句功能:在循環(huán)語句和switch語句中,終止并跳出循環(huán)體或開關(guān)體7.3輔助控制語句while(p){Abreak;B}if(q)while(p){Abreak;B}if(q)else增加了循環(huán)結(jié)束的出口。!p和q都是循環(huán)結(jié)束的條件??梢匀サ鬮reakfor(i=m<n?m:(t=n,n=m,m=t);i>0;i--)if(m%i==0&&n%i==0)break;for(i=m>n?n:m;m%i!=0||n%i!=0;i--);flag=0;/*沒找到最大公約數(shù)*/for(i=m>n?n:m;!flag&&i;i--)if(m%i==0&&n%i==0){flag=i;break;}main(){
ints,n;floatpi,f;
s=1;f=1;n=1;pi=0;
while(1){pi=pi+s*f;n=n+2;s=-s;f=1./n;if(f<1e-6)break;}
printf("%f\n”,(pi=4*pi));}f=1,pi=0,n=1,s=11pi=pi+f*sn=n+2s=-sf=1/n輸出pi=pi*4f<1e-6break
while(f>1e-6){pi=pi+s*f;n=n+2;s=-s;f=1./n;}考慮每一項的絕對值!
2.continue語句功能:結(jié)束本次循環(huán),跳過循環(huán)體中尚未執(zhí)行的語句,進行下一次僅用于循環(huán)語句中while(p){Acontinue;B}if(q)while(p){AB}if(!q)
例求輸入的十個整數(shù)中正數(shù)的個數(shù)及其平均值#include<stdio.h>main(){inti,num=0,a;floatsum=0;for(i=0;i<10;i++){scanf("%d",&a); if(a<=0)continue; num++; sum+=a;}printf("%dplusinteger'ssum:%6.0f\n",num,sum);printf("Meanvalue:%6.2f\n",sum/num);}for(i=0;i<10;i++){scanf("%d",&a); if(a>0){num++; sum+=a;}}7.4循環(huán)的嵌套循環(huán)題語句中又包含另一循環(huán)的結(jié)構(gòu)
三種循環(huán)可互相嵌套,層數(shù)不限(1)while(){……while(){……}…...}(2)do{……do{……}while();…...}while();(3)while(){……do{……}while();…….}(4)for(;;){……do{……}while();……while(){……}…...}內(nèi)循環(huán)外循環(huán)內(nèi)循環(huán)讀入ak=ai=2當(dāng)i
ka被i整除真假用break結(jié)束循環(huán)i=i+1i
k+1真假輸出:a”是素數(shù)”輸出:a”不是素數(shù)”【例】輸出所有兩位素數(shù)。要求:一行輸出15個素數(shù)。判斷a是否為素數(shù)a=10;a<100;a++#include<math.h>main(){inti,a,end,n=0;
}
end=sqrt(a);flag=1;for(i=2;i<=end;i++)if(a%i==0){flag=0;break;}if(flag){printf("%4d",a);n++;if(n%15==0)printf("\n");}for(a=10;a<=99;a++){
}能改成for(a=11;a<=99;a=a+2)
?判斷a是否素數(shù)a在10~99時例循環(huán)嵌套,輸出九九表#include<stdio.h>main(){inti,j;for(i=1;i<10;i++)printf("%4d",i);printf("\n");for(i=1;i<10;i++){for(j=1;j<10;j++)printf("%4d",i*j);printf(“\n”);}}for(i=1;i<10;i++){for(j=1;j<10;j++)printf("%4d",i*j);printf(“\n”);}結(jié)論2:可以表示各種可能的組合可用于解有多組解的問題!窮舉法1234567891234567892468101214161836912151821242791827364554637281……………..ji結(jié)論1:內(nèi)層循環(huán)的變化頻率快?!纠烤幊糖笕齻€數(shù)字x、y、z(0~9)滿足:xyz+zyx=1231。#include"stdio.h"main(){intx,y,k;for(x=1;x<=9;x++)for(y=0;y<=9;y++)for(z=1;z<=9;z++)if(101*x+20*y+101*z==1231)
printf("x=%d,y=%d,z=%d\n",x,y,z);}求解過程+abnext第5項++abnext第3項abnext第4項abnext第6項+……112
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年食堂租賃及校園食品安全監(jiān)督服務(wù)合同3篇
- 2024年酒店一次性用品采購與售后服務(wù)合同
- 2024年社保工傷賠償合同3篇
- 2024年防盜門定制安裝合同3篇
- 2024年高壓設(shè)備安裝工程標(biāo)準(zhǔn)協(xié)議模板
- 2024年簡化版戰(zhàn)略協(xié)作框架協(xié)議版B版
- 2024年電力企業(yè)戰(zhàn)略合作協(xié)議3篇
- 2024年社區(qū)垃圾清理工坊
- 2024年金融理財產(chǎn)品銷售代理合同模板3篇
- 2024蘇州二手房買賣與家居綠化養(yǎng)護服務(wù)合同3篇
- 繼電保護試題庫(含參考答案)
- 《榜樣9》觀后感心得體會四
- 《水下拋石基床振動夯實及整平施工規(guī)程》
- 2025年云南大理州工業(yè)投資(集團)限公司招聘31人管理單位筆試遴選500模擬題附帶答案詳解
- 現(xiàn)代學(xué)徒制課題:數(shù)字化轉(zhuǎn)型背景下新型師徒關(guān)系構(gòu)建研究(附:研究思路模板、可修改技術(shù)路線圖)
- 風(fēng)電危險源辨識及控制措施
- 《教師職業(yè)道德與政策法規(guī)》課程教學(xué)大綱
- 9.2溶解度(第2課時)-2024-2025學(xué)年九年級化學(xué)人教版(2024)下冊
- 安徽省合肥市包河區(qū)2023-2024學(xué)年三年級上學(xué)期語文期末試卷
- 2024版食源性疾病培訓(xùn)完整課件
- 兒童傳染病預(yù)防課件
評論
0/150
提交評論