(6.17)-第16课(4.5节-循环结构的嵌套)_第1页
(6.17)-第16课(4.5节-循环结构的嵌套)_第2页
(6.17)-第16课(4.5节-循环结构的嵌套)_第3页
(6.17)-第16课(4.5节-循环结构的嵌套)_第4页
(6.17)-第16课(4.5节-循环结构的嵌套)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

循环结构嵌套循环结构程序设计循环结构的嵌套在程序设计中,一个循环语句的循环体又包含一个完整的循环结构时,构成多重循环,又称为循环语句的嵌套 for() { do { }while(); } for(){ do { } }while();循环结构的嵌套三种循环结构(while循环、for循环、do-while循环)可以任意组合嵌套如果是多重循环,外循环和内循环应选用不同的循环控制变量(1)while(){……while(){……}…...}(2)do{……do{……}while();…...}while();(3)while(){……do{……}while();…….}(4)for(;;){……do{……}while();……while(){……}…...}双重循环嵌套的执行过程表达式1……….YN表达式2……….Y……….N首先进行外层循环的条件判断(表达式1),当外层循环条件成立时顺序执行外层循环体语句遇到内层循环,则进行内层循环条件判断(表达式2),并在内层循环条件成立的情况下反复执行内层循环体语句双重循环嵌套的执行过程表达式1……….YN表达式2……….Y……….N当内层循环因循环条件不成立而退出后重新返回到外层循环并顺序执行外层循环体的其它语句外层循环体执行一次后,重新进行下一次的外层循环条件判断,若条件依然成立,则重复上述过程,直到外层循环条件不成立时,退出双重循环嵌套,执行后面其它语句【例1:】按如下格式打印九九乘法口诀表解题思路

#include<stdio.h>

voidmain()

{ inti,

j; for(i=1;

i<=9;

i++)

//外循环控制输出行

{

for(j=1;

j<=9;

j++)

//输出该行的内容*/

printf("%4d*%d=%2d",i,j,

i*j);

printf("\n");

//每行结束后输出换行

}

}程序实现【例2:】按如下格式打印九九乘法口诀表解题思路共输出9行,第1行输出1项、第2行输出2项……第9行输出9项每次进入外层循环后,内层循环的循环次数是不固定的 #include<stdio.h>

voidmain()

{ inti,

j; for(i=1;

i<=9;

i++)

//外循环控制输出行

{

for(j=1;

j<=i;

j++)

//输出该行的内容*/

printf("%4d*%d=%2d",i,j,

i*j);

printf("\n");

//每行结束后输出换行

}

}程序实现解题思路

三个未知数,两个方程

问题解决之道:穷举法穷举解决之道:循环【例3:】我国古代数学家张丘建在《算经》中出了一道题“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?”

算法如下假设x、y已知,由方程①可以得出z=100-x-y由条件可知x和y的值有限制:x在[0,20]之间;y在[0,33]之间。需要用两重循环实现。每个x和y的组合都对应一个z的值,如果x,y和z的值满足方程②,即为所求结果由于计算机在完成实数运算(z/3)时有误差,所以将方程②变形为:15x+9y+z=300#include<stdio.h>voidmain(){intx,y,z;for(x=0;x<=20;x++)//x表示公鸡个数for(y=0;y<=33;y++)//y表示母鸡个数{z=100-x-y;//z表示雏鸡个数if(15*x+9*y+z==300)printf(“公鸡:%d只,母鸡:%d只,雏鸡:%d只\n”,x,y,z);}}程序实现【例4:】输出100~200之间的全部素数。每行输出10个解题思路

#include<stdio.h>#include<math.h>voidmain(){intm,k,i,n=0;for(m=100;m<=200;m++)//外循环{k=sqrt(m);for(i=2;i<=k;i++)//内循环判断m是否是素数if(m%i==0)break;if(i>=k+1)

{printf("%d",m);//如果是素数,就输出该数n=n+1;

温馨提示

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

评论

0/150

提交评论