第6章 循环控制.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章循环控制 课堂教学4学时 上机操作2学时 教学累计16学时 上机累计4学时 循环结构是重复执行某段程序,直到某个条件满足为止的一种程序结构。 很多问题的解决需要用到循环控制。 循环结构、顺序结构、选择结构是构成复杂程序的基本单元。 C提供四种循环 goto ~ if while do ~ while for goto语句以及用goto语句构成循环 无条件转向语句一般形式: goto 语句标号; 两种用途 与if语句构成循环 从多层循环的最内层跳出 例6.1求∑n 求:1+2+3+4……+100 main( ) {  int i,sum=0;   注意:初值的设置   i=1; loop:if(i=100) {sum=sum+i; i++; goto loop;} printf(%d,sum); } 运行结果:5050 while语句 while语句可以实现当型循环 格式:while(表达式)      语句; 执行过程:计算表达式值,为真(非0)则执行语句;反复执行上述操作,直到表达式值为假时止 思考:变!什么在改变! 例6.2求∑n main( ) {int i,sum=0; i=1; while(i=100) { sum=sum+i; i++;} printf(%d,sum);} 问:sum和i都在变,谁的变化使循环结束? 例求7! main( ) {int t=1,i=2; while (i=7) {t=t*i; i++;} printf(“7!=%d\n”,t);} 运行结果:5040 (1x2x3x4x5x6x7) 思考 修改程序使运算顺序为7x6x5x4x3x2x1 main( ) {int t=7,i=6; while (i0) {t=t*i; i- -;} printf(“7!=%d\n”,t);} 课堂练习 读程序写出运行结果 main( ) {long x; int n=0; scanf(“%ld”,x); 运行时输入:x=x0?x:-x; 运行结果 : while(x!=0) {n++; x=x/10;} printf(%d\n,n);} 运行结果 :8 问: 循环体内增加printf(%d\n,x); 运行结果是: 1020304 102030 10203 1020 102 10 1 0 8 do-while语句 do-while语句可以实现直到型循环 格式: do 语句; while(表达式); 执行过程:先执行语句,后计算表达式值,为0(假)则退出循环;否则返回do处,继续循环 例6.3 用do-while语句求∑n main( ) {int sum=0,i=1; do {sum=sum+i; i++; } while(i=100); printf(%d,sum); } for语句 使用最为灵活,可代替while 格式:for(表达式1;表达式2;表达式3)     语句; 应用形式: for(循环变量初值;循环条件;循环变量增值) 一条语句完成求和 for(i=1;i=100;i++) sum=sum+i; for语句改为while循环的形式:  表达式1;  while(表达式2) { 语句   表达式3; } for语句的任何一个表达式都可以省略 但不能省略分号“;” for( ;i=100;i++) sum=sum+i; for(i=1; ;i++) sum=sum+i; for(i=1;i=100; ) sum=sum+i; for( ;i=100; ) sum=sum+i; for( ; ; ) 相当于while(1) for(sum=0,i=1;i=100;i++) sum=sum+i; for(i=0,j=100;i=100;i++,j--) sum=j+i; 讨论 ***** for(i=0;(c=getchar( ))!=‘\n’;i+=c); 作用? for(;(c=getchar( ))!=‘\n’;)      printf(“%c”,c); 结果? 输入:computer 输出:computer 输入输出:    ccoommppuutteerr 读程序写出运行结果 main( ) {int number,digit; scanf(“%d”,number); 运行时

文档评论(0)

yurixiang1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档