项目5 第七讲 循环的嵌套_第1页
项目5 第七讲 循环的嵌套_第2页
项目5 第七讲 循环的嵌套_第3页
项目5 第七讲 循环的嵌套_第4页
项目5 第七讲 循环的嵌套_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

项目五循环结构程序设计第七讲循环的嵌套C语言程序设计任务驱动式教程领会循环嵌套的结构掌握双重循环的应用能够使用循环嵌套解决常见问题目标问题导入什么是循环的嵌套?如图所示的图案如何使用循环语句来实现呢?循环的嵌套任务二一个循环语句的循环体内包含另一个完整的循环结构,称为循环的嵌套。嵌在循环体内的循环称为内循环,嵌有内循环的循环称为外循环。内嵌的循环中还可以嵌套循环,这就是多重循环。三种循环语句while语句、do-while语句和for语句可以互相嵌套,自由组合。(1)while(表达式){ 语句 while(表达式){ 语句 }}内循环(2)do{语句do{ 语句}while(表达式);}while(表达式);内循环循环的嵌套任务二(3)for(表达式1;表达式2;表达式3){ 语句 for(表达式1;表达式2;表达式3) { 语句 }}内循环(4)while(表达式){语句for(表达式1;表达式2;表达式3)

{ 语句} }内循环(6)do

{语句for(表达式1;表达式2;表达式3)

{语句}

语句}while();(5)for(表达式1;表达式2;表达式3){语句

while(表达式)

{语句}

语句}内循环内循环循环的嵌套任务二如图所示的图案如何使用循环语句来实现呢?

应用怎样输出一行8个星号?intmain(){intj;

while(j<=8)

{putchar(‘*’);

j++;

}return0;}intmain(){intj;for(j=1;j<=8;j++)

putchar(‘*’);

return0;}putchar(‘*’);输出一个*循环变量j控制putchar(‘*’);重复执行的次数,也就是控制输出*输出个数。注意循环的嵌套-示例任务二注意怎样输出8行8个星号?intmain(){inti,j;

for(i=1;i<=8;i++)//外循环控制行数

{for(j=1;j<=8;j++)//内循环控制*的个数putchar(‘*’);

putchar(‘\n’);//换行

}

return0;}i控制内循环重复执行的次数,即输出的函数循环变量j控制输出*的个数。循环的嵌套-示例任务二注意怎样输出8行星号逐行加1?intmain(){inti,j;

for(i=1;i<=;i++)//外循环控制行数

{for(j=1;j<=;j++)//内循环控制*的个数putchar(‘*’);

putchar(‘\n’);//换行

}

return0;}个数行数找规律:

每行‘*’个数随着行控制变量i的值变化而变化的。第i行:i个*循环的嵌套-示例任务二注意怎样输出8行星号逐行加1?intmain(){inti,j;

for(i=1;i<=;i++)//外循环控制行数

{for(j=1;j<=;j++)//内循环控制*的个数putchar(‘*’);

putchar(‘\n’);//换行

}

return0;}个数行数找规律:

每行‘*’个数随着行控制变量i的值变化而变化的。第i行:i个*8i循环的嵌套-示例任务二注意怎样输出8行星号逐行加1?intmain(){inti,j;

for(i=1;i<=;i++)//外循环控制行数

{for(j=1;j<=;j++)//内循环控制空格的个数

for(j=1;j<=;j++)//内循环控制*的个数

putchar(‘*’);

putchar(‘\n’);//换行

}

return0;}*个数行数找规律:

第i行:i个*第i行:8-i个空格空格个数循环的嵌套-示例任务二注意怎样输出8行星号逐行加1?intmain(){inti,j;

for(i=1;i<=;i++)//外循环控制行数

{for(j=1;j<=;j++)//内循环控制空格的个数

for(j=1;j<=;j++)//内循环控制*的个数

putchar(‘*’);

putchar(‘\n’);//换行

}

return0;}*个数行数找规律:

第i行:i个*第i行:8-i个空格空格个数88-ii循环的嵌套-示例任务二注意怎样输出8行星号逐行加1?#include<stdio.h>intmain(){inti,j;

for(i=1;i<=8;i++)//外循环控制行数{for(j=1;j<=8-i;j++)//内循环控制空格的个数

putchar(‘’);

for(j=1;j<=i;j++)//内循环控制*的个数

putchar(‘*’);

putchar(‘\n’);//换行

}

return0;}找规律:

第i行:i个*第i行:8-i个空格技能实训1.如何用循环方式输出下列图案呢?练一练技能实训任务二找规律:………………

第i行:8-i个空格,2*i-1个*第1行:7个空格,1个*第2行:6个空格,3个*技能实训练一练技能实训任务二#include<stdio.h>intmain(){inti,j;for(i=1;i<=8;i++)

//控制行

{for(j=1;j<=8-i;j++)

//控制空格

putchar('');for(j=1;j<=2*i-1;j++)

//控制*的个数

putchar('*'); putchar('\n');

//换行

}

return0;}循环的嵌套-示例任务二多重嵌套循环是怎么执行的?#include<stdio.h>intmain(){inti,j;for(i=1;i<=n;i++)for(j=1;j<=n;j++)printf(“i=%d,j=%d:\n",i,j);return0;}技能实训技能实训任务二intmain(){inti,j;

for(i=1;i<=8;i++)//外循环控制行数

{for(j=1;j<=8;j++)//内循环控制*的个数putchar(‘*’);

putchar(‘\n’);//换行

}

return0;}技能实训练一练技能实训任务二#include<stdio.h>intmain(){inti=0;//行

intj=0;//列

for(i=1;i<=9;i++)//外循环生成1-9的数字,控制每一行

{for(j=1;j<=9;j++)//内循环控制每一列的内容

{printf("%d*%d=%2d",j,i,i*j);//这里使用%2d是让打印出来的九九乘法表更美观

}printf("\n");//每打印完一次进行换行

}return0;}技能实训练一练技能实训任务二技能实训练一练技能实训任务二#include<stdio.h>intmain(){inti=0;

//行intj=0;

//列for(i=1;i<=9;i++)

//外循环生成1-9的数字,控制每一行{for(j=1;j<=i;j++)//内循环控制每一列的内容{printf("%d*%d=%2d",j,i,i*j);

//这里使用%2d是让打印出来的九九乘法表更美观}printf("\n");

//每打印完一次进行换行}return0;}技能实训练一练技能实训任务二注:j<i时输出空格技能实训练一练技能实训任务二#include<stdio.h>intmain(){inti,j;for(i=1;i<=9;i++){for(j=1;j<=9;j++)

{if(j<i)//打印八个空格,去掉空格就是左上三角形

printf("");elseprintf("%d*%d=%2d",i,j,i*j);}printf("\n");}return0;}#include"stdio.h"voidmain(){inti,j;for(i=1;i<=9;++i){for(j=1;j<=i-1;j++)printf("");for(j=1;j<=10-i;++j){printf("%2d*%2d=%-3d",i,j,j*i);}printf("\n");}}技能实训练一练技能实训任务二技能实训练一练技能实训任务二#include<stdio.h>intmain(){inti,j;for(i=1;i<=9;i++){

//将下面的for循环注释掉,就输出左下三角形

for(j=1;j<=9-i;j++)printf("");for(j=1;j<=i;j++)printf("%d*%d=%2d",i,j,i*j);

printf("\n");}return0;}技能实训技能实训任务二#include<stdio.h>intmain(){inti,j;for(i=1;i<=9;i++){

//将下面的for循环注释掉,就输出左下三角形

for(j=1;j<=9-i;j++)printf("");for(j=1;j<=i;j++)printf("%d*%d=%2d",i,j,i*j);

printf("\n");}return0;}技能实训练一练技能实训任务二#include"stdio.h"voidmain(){inti,j,s;for(i=1;i<=9;++i){for(j=1;j<=10-i;++j){printf("%d*%d=%-3d",i,j,j*i);}printf("\n");}}学习总结答一答任务二学习总结嵌套循环控制变量不能相同内循环变化快,外循环变化慢正确确定循环体循环控制变量常与求解的问题挂钩循环的嵌套-示例任务二源程序计算输出1!+2!+3!+……+n!i!=1*2*3*…..*n1!=12!=1*23!=1*2*34!=1*2*3*45!=1*2*3*4*56!=1*2*3*4*5*6…………intmain(){inti,j,n;longp,sum=0;

printf("pleaseentern:");scanf(“_____",&____);for(_____;_____;_____)

{_____;

for(_____;_____;_____){p=____;}sum=_____;}printf("sum=______:\n",sum);return0;}循环的嵌套-示例任务二源程序计算输出1!+2!+3!+……+n!i!=1*2*3*…..*n11*21*2*31*2*3*41*2*3*4*

温馨提示

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

评论

0/150

提交评论