C语言程序设计案例教程-刘小华-5.9 循环语句的嵌套.pptxVIP

C语言程序设计案例教程-刘小华-5.9 循环语句的嵌套.pptx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.9 循环语句的嵌套Teacher teaching design CONTENTS 目 录自主学习 明确考点案例分析 交流提升课后作业 自我提升仿真演练,体验探索 提出问题 引入新课PART 01 思考:(1)对照前面所讲的数位分解法有什么不同? (2)请尝试分析以下程序的执行过程? 请分析以下求1000以内的所有 “水仙花数”程序。main() { int i,j,k,m,n;for(i=1;i=9;i++)for(j=0;j=9;j++)for(k=0;k=9;k++){ m=i*100+j*10+k; n=i*i*i+j*j*j+k*k*k; if(m==n) printf(%5d,m); }}【解析:】这是一个由3个for循环构成的循环嵌套。外循环for(i=1;i=9;i++)每执行一遍,内循环for(j=0;j=9;j++)要执行完毕,也就是10次,而最内层循环for(k=0;k=9;k++)要执行10×10=100次。 程序运行结果: 153 370 371 407提出问题 引入新课 (1)、分析以下程序的运行结果。 #include stdio.hvoid main(){int a, b; for(a=1,b=1; a=10; a++) {if(b=10) break; if(b%3==1) {b+=3; continue;} } printf(%d\n,a);}案例分析 交流提升 自主学习 明确考点PART 02点击输入简要文字内容,需概括精炼,不用多余的文字修饰,言简意赅的说明分项内容。添加标题内容 自主学习 明确考点考点一、循环语句的嵌套结构如果一个循环结构的循环体中又包含一个完整的循环结构,就称为循环的嵌套,如果内嵌的循环体中还包含有完整的循环,称多重循环。含义:三种循环语句(while,for,do-while)可以相互嵌套。例如,以下几种均为合法的循环嵌套。嵌套结构种类: 自主学习 明确考点(1)for语句和while语句构成的循环嵌套;(2)do-while语句和for语句构成的循环嵌套;(3)do-while语句和while语句构成的循环嵌套;(4)for语句和for语句构成的循环嵌套。 for(){ …while() {… }…} do{ …for( ) {…} …}while();while(){…do() {… }while();…}for( ){…for() {… }} 案例分析 交流提升PART 03 (1)printf (“\n”); 的作用是什么?是打印这个图形所是必需的吗?(2)内循环中的大括号:{ },也是必需的吗?其作用是什么? 思考:这是一个简单的二维图形:5行,8列。用二重循环设计程序正好合适。这里循环次数已知,使用for语句循环方便。分析:【例1】、打印如下图形: * * * * * * * * * * * * * * * 案例分析 交流提升用变量 i表示行号,取值范围1到5;变量j表示列号,取值范围1到8。因为打印图形是按行打印,先打印第一行,再打印第二行,...,所以应该由内循环完成行的打印。对某一行i,有循环:for ( j=1 ; j= 8 ; j++ ) printf (”*”) ;实现对i行的打印,打印出第i行的:“* * * * * * * * “ 。所以j就是内循环变量了。外循环i是控制行号的,i是外循环变量。main(){int i , j ;for (i=1 ; j= 5 ; i++ ){ for ( j=1 ; j= 8 ; j++ ) printf (”*”) ; printf (“\n”); }} (1)内循环设计出判断某一个数n是否是素数的算法; 分析:1(3)外循环: 被判断数n ,从100 循环到200;main(){ int i , n ; for( n=101 ;n200;n+=2) /*外循环:为内循环提供一个整数n */{ for( i=2 ; i = n-1 ; i++ ) /*内循环:判断整数n是否是素数*/ if(n%i==0) /*n不是素数*/ break; /*n不是素数时,强行退出内循环,回到外循环继续*/ if( i=n ) /* n是素数时,输出n */ printf(“%5d”,n); } } 2【例2】、输出100~200之间的全部素数。所谓素数n是指,除1和n之外,不能被2~(n

您可能关注的文档

文档评论(0)

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

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档