3+2升本第六章 循环结构.doc_第1页
3+2升本第六章 循环结构.doc_第2页
3+2升本第六章 循环结构.doc_第3页
3+2升本第六章 循环结构.doc_第4页
3+2升本第六章 循环结构.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章 循环结构一、while语句while语句的一般形式为: while(表达式) 循环体语句 while循环结构的执行过程:先计算表达式(循环条件)的值,若结果为“真”(非0),执行循环体语句;然后再次计算表达式的值,重复上述过程,直到表达式的值为“假”(0)时,结束循环,流程控制转到循环结构的下一条语句。while循环结构的注意事项:(1)while循环结构的特点是“先判断,后执行”。如果表达式的值一开始就为“假”,则循环体一次也不执行。(2)循环体内中,如果包含两个或两个以上的语句,必须用花括号括起来,以复合语句的形式出现。(3)循环体内一定要有改变循环条件的语句,使循环趋向于结束,以免形成“死循环”。例、 main() int i, sum=1; i=1; while(i=5) sum=sum*i; i+;printf(“%d”,sum);二、dowhile语句dowhile语句的形式为: do 循环体语句 while(表达式);dowhile循环结构的执行过程:先执行一次循环体语句,然后计算表达式(循环条件)的值。若结果为“真”(非0),则再次执行循环体,再计算表达式的值,如此重复下去,直到表达式的值为“假”(0)时,循环结束,流程控制转到循环结构的下一条语句。dowhile循环结构的注意事项:(1)dowhile循环结构的特点是“先执行,后判断”。即使表达式的值一开始就为“假”,循环体也要执行一次。(1)循环体包含两个或两个以上的语句时,必须用花括号括起来,以复合语句形式出现。(2)循环体内一定要有改变循环条件的语句,使循环趋向于结束,以免形成“死循环”。例、 main() int i, sum=1; i=1; do sum=sum*i; i+; while(i=5);printf(“%d”,sum);三、for语句for语句的形式为: for(表达式1;表达式2;表达式3) 循环体语句 for循环结构的执行过程:先执行表达式1,赋初值;再执行表达式2,计算表达式2的值,结果为“真”(非0),执行循环体语句;循环体语句执行完毕,返回表达式3,让循环变量发生变化,再判断表达式2的值。如此循环重复下去,直到表达式2的值为“假”(0)时,循环结束,流程控制转到循环结构的下一条语句。for循环结构的注意事项:(1)关键字for的三个表达式允许部分或全部省略,但其中的两个分号(;)不能省略。(2)当省略表达式3时,应该在循环体有修改循环变量的值的语句,以保证循环能够正常结束。(3)当表达式2或三个表达式全部省略时,应该在循环体内设置相应的语句来结束循环,否则程序始终认为判断条件成立,循环将无终止地执行下去,即形成死循环。(4)循环体包含两个或两个以上的语句时,必须用花括号括起来,以复合语句形式出现。前面例题怎样用for循环实现。四、循环结构的嵌套任意一种循环结构中又套有循环结构,称为循环的嵌套。例、求阶乘的和(s=1!+2!+3!+n!,n由键盘输入)。 main() int i,j,n; long sum,p; /*定义变量sum、p为长整型变量*/ scanf(%d,&n); for(sum=0,i=1;i=n;i+) p=1; j=1; do p=p*j; /*求i的阶乘*/ while(+j=i); sum+=p; /*把i的阶乘累加到sum中*/ printf(nsum=%ldn,sum); 五、break语句和continue语句1、break语句break语句的一般形式: break;该语句的功能是:使执行从包含它的最内层循环或switch语句中跳出,转到switch结构或该循环结构外的下一条语句执行。这将导致包含它的最内层循环(while、for、dowhile)或switch语句的终止。使用break语句的注意事项:(1)break语句只能用于switch结构或循环结构中。在循环结构中应用时,通常与if语句配合使用。(2)在嵌套的循环结构中使用时,break语句只能跳出(或终止)包含它的最内层循环。而不能同时跳出(或终止)多层循环。以下程序涉及在嵌套结构中,使用了break语句。 #include main() int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y) case 0: a+; break; case 1: b+; break; case 2: a+; b+; break; case 3: a+; b+; printf(a=%d, b=%dn, a, b);/*输出结果为: */ 2、continue语句continue语句的一般形式: continue;该语句的功能是:结束本次循环,使得包含它的循环(while、dowhile、for)开始下一次循环。使用continue语句的注意事项:(1)continue语句只能用于循环结构中,通常也要有if语句配合使用。(2)continue语句只能结束本次循环,而不是终止整个循环的执行。(3)在循环结构中,一旦continue语句执行,即使该语句后有其他语句也不再执行,而是跳转到循环条件,再次判断条件是否成立。注:continue语句是个难点,在二级C考试中经常出现。例1有以下程序 main( ) int i,n=0; for(i=2;i5;i+) do if(i%3) continue; n+; while(!i); n+; printf(n=%dn,n); 程序执行后的输出结果是 A)n=5 B)n=2 C)n=3 D)n=42有以下程序 main() int i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论