第3章 控制结构(选择循环).ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
§3.4?? 循环的嵌套 程序的结果为: 1*1=1 2*1=2 2*2=4 3*1=3 3*2=6 3*3=9 ……. #includestdio.h main() {int i,j; for(i=1;i10;i++) { for(j=1;j=i;j++) printf(“%d*%d=%2d ”,i,j,i*j); printf(“\n”);} } ?注意循环控制变量的初值和终值. §3.4?? 循环的嵌套 思考: 要打印九九表如下,该如何修改程序? 1*1=1 1*2=2 ………. 1*9=9 2*1=2 2*2=4 …… 2*8=16 ….. 9*1=9 §3.5?? break和continue语句 1、break 语句 可以用于从循环体内跳出循环体,提前退出循环。 使用形式: break ; 注意:break只能用于循环语句和switch语句中。 2、continue 语句 其作用是结束本次循环,即跳过循环体下面还未执行的语句;回到循环开头的条件判断处,重新判断是否再次执行循环。 使用形式: continue ; 区别:break 是结束整个循环过程。 continue 是终止本次循环。 §3.5?? break和continue语句 例:把100__200之间不能被3整除的数输出。 Main() { int n; for( n=100; n=200 ; n++ ) { if (n % 3 == 0 ) continue ; printf(“%d ”, n); } } Main() { int n; for( n=100; n=200 ; n++ ) { if (n % 3 == 0 ) break; printf(“%d ”, n); } } 输出:100 101 §3.6 使用循环时常见错误 (1) 误将“=”作为等号使用。 这是最常见的死循环之一,例如: while(a=1) {……} (2) 忘记用花括号括起循环中的多条语句。如:a=1; while(a=10) printf(“a=%d\n”,a); a++; (3) 在不该加分号的地方加了分号。如: for(i=1;i10;i++); sum=sum+i; §3.6 使用循环时常见错误 (4) 循环变量没有改变。例如: i=1; while(i10) sum=sum+i; (5) 对变量的变化范围认识不够。如: for(i=0;i40000;i++){……} (6) 输入有误。如: for(i=1;i10;i++) for(j=1;j10;i++) {……} 注意:本章不要求内容:位运算,goto,exit(). 示 例 【例1】求n! ,即计算p=1×2×3×…×n的值。 思路:求阶乘与求累加的运算处理过程类似,只要将“+”变为“*”。 设置: 乘数i ,初值为1,终值为n(n是循环控制终值,需要从键盘输入) 累乘器 p ,每次循环令p = p*i 程序: main( ) { int i, n; long p; p=1; printf(Enter n:); scanf(%d,n); for (i=1; i=n; i++) p = p * i; printf(p = %ld \n,p); } 思考: 如何输出1!, 2!, … , n! ? 如何求s =1!+ 2!+ … + n! ? 示 例 【例2】把100~200之间能被7整除的数,以十个数为一行的形式输出,最后输出一共有多少个这样的数。 分析:1:循环范围; 2、被7整除; 3:每行输出10个这样的数; 4:总计数满足条件的数个数 main( ) { int n,j=0; for(n=100;n=200;n++) { if (n%7!=0) continu

文档评论(0)

70后老哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档