资源描述:
《C语言循环程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章循环程序设计6.1概述goto语句和if语句构成循环while循环do-while循环for循环一般形式:goto语句标号语句标号用表识符表示;这种循环不常用6.2goto语句以及goto语句构成的循环例:求表达式1+2+3+…+n的结果main(){intn,i=1,sum=0;printf(“inputthen=”);scanf(“%d”,&n);loop:if(i<=n){sum+=i++;gotoloop;}printf(“thesumis%d’,sum);}6.3while语句一般形式:while(表达式)语句当表达式为真(非0)时,执行循环语句。注意:1循环
2、语句可以是复合语句,用{}括起来。2应使循环能够结束.表达式语句真假特点:先判断后执行.main(){inti=1,s=0;while(i<=100){s=s+i;i++;}printf(“thesumis%d/n’,s);}main(){inti=1,s=0;while(i<=100)s=s+i++;printf(“thesumis%d/n’,s);}例:求表达式1+2+3+…+100的结果6.3dowhile语句一般形式:do语句while(表达式);当表达式值为真时,返回循环头重新执行语句,直到表达式的值为假。表达式假语句真main(){inti=1,s=0;do{s=s+
3、i;i++;}while(i<=100);printf(“thesumis%d/n’,s);}特点:先执行后判断。至少执行一次循环体.赋初值一般形式:for(表达式1;表达式2;表达式3)语句6.5for语句表达式1表达式2语句表达式3假真循环条件改变循环变量inti,sum;for(i=1,sum=0;i<=100;i++)sum=sum+i;等价的表示形式:表达式1;While(表达式2){语句;表达式3;}for(表达式1;表达式2;表达式3)语句表达式1可以省略,但分号不可省for(;i<=100;i++)sum=sum+i;表达式3可以省略,但应保证循环正常进行for(
4、sum=0,i=1;i<=100;){sum=sum+i;i++;}省略表达式1和3,只有表达式2三个表达式都省略for(;;)语句while(i<=100){sum=sum+i;i++;}for(;i<=100;){sum=sum+i;i++;}while(1)语句说明:6.6循环的嵌套(多重循环)三种循环可以互相嵌套,见p113非法的嵌套合法的嵌套【例】编程求三个数字x、y、z(0~9)满足:xyz+zyx=1231。#include"stdio.h"main(){inti,j,k;for(i=1;i<=9;i++)/*1*/{for(j=0;j<=9;j++)/*2*/{f
5、or(k=0;k<=9;k++)if(101*i+20*j+101*k==1231)printf("x=%d,y=%d,z=%d",i,j,k);}/*endof2*/}/*endof1*/}6.7几种循环的比较四种循环可以互相代替,但不提倡用goto型循环while和dowhile型循环:循环变量初始化的操作应在while和dowhile语句之前完成;在while后指定循环条件;循环体中应有可使循环结束的语句,for语句:在表达式1中初始化循环变量,表达式2指定循环条件,表达式3含有可使循环结束的语句甚至循环体。因此,功能最强。break,continue可用于while,
6、dowhile,for循环,但不能用于goto型循环。break语句跳出switch语句,终止for,while,dowhile循环6.8break语句和continue语句表达式1语句1表达式2语句2假假真真while(表达式1){语句1;if(表达式2)break;语句2;}表达式1为假或表达式2为真,就结束整个循环。continue语句结束本次循环,回到循环的开头,继续下一次循环表达式1语句1表达式2语句2假假真真while(表达式1){语句1;if(表达式2)continue;语句2;}表达式1为假才能结束整个循环。【例1】判断m是否是素数.main(){intm,i,f
7、=1;scanf(%d”,&m);for(i=2;i10)break;}printf("%d",s);getch();}【