1 / 41
文档名称:

循环结构训练.ppt

格式:ppt   大小:612KB   页数:41页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

循环结构训练.ppt

上传人:jiquhe72 2018/6/19 文件大小:612 KB

下载得到文件列表

循环结构训练.ppt

相关文档

文档介绍

文档介绍:综合训练一循环结构程序
项目一:图形编程
项目二:学生成绩的分组汇总
项目三:其他问题
项目四:举一反三
项目一图形输出
项目要求
给定图形,按照要求格式输出
项目分析:
分析图形的特点,包括行、列上字符的个数,通过多重循环控制图形的输出
****
****
****
****
使用双重循环实现
思路:
一共有4 行,每行由星号组成:
变量 i 控制输出行数, 从1变化到4
变量 j 控制输出每行的星号:
j 从1变化到 4,每次输出一个星号
例1:编程序,输出以下图形
参考代码:
#include""
main( )
{ int i,j;
for (i=1; i<=4; i++)
{
for (j=1; j<=4; j++)
printf("*");
printf("\n");
}
}
改写例1:
编程序,输出以下图形。
*
**
***
****
思路:
一共有4 行,每行由星号组成:
变量 i 控制输出行数, 从1变化到4
变量 j 控制输出每行的星号:
j 从1变化到 i,每次输出一个星号
参考代码:
main( )
{ int i,j;
for (i=1; i<=4; i++)
{
for (j=1; j<=i; j++)
printf("*");
printf("\n");
}
}
再次改写例1:
编程序,输出以下图形。
*******
*****
***
*
思路:
一共有4 行,每行由空格和星号组成:空格数按行增加,星号按行减少
变量 i 控制输出行数, 从1变化到4
变量 j 控制输出每行的空格和星号:
j 从1变化到 i,每次输出一个空格
j 从1变化到 8-2*i+1,每次输出一个星号
参考算法和程序:
main( )
{ int i,j;
for (i=1; i<=4; i++)
{ for (j=1; j<=i; j++)
printf(" ");
for (j=1;j<=8-(2*i-1);j++)
printf("*");
printf("\n");
}
}
for (i=1; i<=4; i++)
for (j=1; j<=i; j++)
输出一个空格
for (j=1; j<=8-(2*i-1); j++)
输出一个星号
换行
思考:
如何输出10行图形?
输出图形向右平移20个字符位置,应如何修改程序?
【反复训练】编程显示如下所示的图形
*
***
*****
*******
*********
分析:题目要求的三角形由5行组成,因此程序中循环结构
的循环次数应为5次,每一次输出一行。而“输出一行”又进
一步分为三项工作。
(1) 输出若干个空格;
(2) 输出若干个星号;
(3) 回车换行,为新的一行的输出做准备。
现在的问题是,如何确定每一行应输出的空格数和字符”*”的数
目,以便分别通过循环来输出这两种字符。
行号
应输出的空格
应输出的“*”
1
5
1
2
4
3
3
3
5
4
2
7
5
1
9
i
6-i
2*i-1
#include <>
main()
{int i,j;
for(i=1;i<=5;i++) //一共输出5行
{ for(j=1;j<=6-i;j++)
printf(" "); //输出空格数
for(j=1;j<=2*i-1;j++)
printf("*"); //输出”*”的数目
printf(“\n”); //换行
}
}
项目二学生成绩的分组汇总
项目要求
一个班中有四个小组,求本学期期中考试中每个小组数学成绩的总分及平均分。
项目分析
在一个小组中对学生数学成绩的平均分与总分进行计算;然后就是重复进行4次。所以,将这一项目可分成二个任务:
任务一:求一个小组学生成绩的总分及平均分;
任务二:求四个小组学生成绩的总分及平均分。