循环章末总结
一.知识总结
循环结构通常有两种:当型循环结构、直到型循环结构。
常见循环语句:1.for语句。2.whlie语句。3.do-while语句。1、2为当型循环结构,3为直到型循环结构。
循环中用于控制流程的还有break语句(只能跳转到循环后第一条语句)、continue语句、goto语句(可向任意方向跳转)。
适用情况:
while语句:循环次数未知,条件控制的循环,用while语句。
do-while语句:循环体至少要执行一次。
for语句:循环次数已知,计数控制的循环,用for语句。
(注意:for语句中三个表达式之间用分号分隔,不能用逗号。)
常见循环类型:{计数控制的循环、条件控制的循环、嵌套循环}
二.典型例题
1.画矩形.
描述
根据参数,画出矩形。
输入
输入一行,包括四个参数:前两个参数为整数,依次代表矩形的高和宽(高不少于3行不多于10行,宽不少于5列不多于10列);第三个参数是一个字符,表示用来画图的矩形符号;第四个参数为1或0,0代表空心,1代表实心。
输出
输出画出的图形。
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int x,y,h;
char ch;
cin>>y>>x>>ch>>h;
for(int i=1;i<=y;i++){
for(int n=1;n<=x;n++){
if(h==0){
if(i==1||i==y||n==1||n==x){
cout<<ch;
}else cout<<" ";
}else cout<<ch;
}
cout<<endl;
}
return 0;
}
画矩形的题目可用for循环输出长和宽,矩形内部的图案可通过条件语句来控制。
2.数组求和问题
描述
计算数组的和
输入
第一行n表示元素个数
第二行n个元素
输出
n个元素的和
#include<iostream>
#include<cstdio>
using namespace std;
int main( )
{
int n,m,y=0,i;
cin>>n;
for(i=1;i<=n;i++)
{cin>>m;
y=y+m;}
cout<<y;
return 0;
}
3.最高分数
描述
孙老师讲授的《计算概论》这门课期中考试刚刚结束,他想知道考试中取得的最高分数。因为人数比较多,他觉得这件事情交给计算机来做比较方便。你能帮孙老师解决这个问题吗?
输入
输入两行,第一行为整数n(1 <= n < 100),表示参加这次考试的人数.第二行是这n个学生的成绩,相邻两个数之间用单个空格隔开。所有成绩均为0到100之间的整数。
输出
输出一个整数,即最高的成绩。
#include <iostream>
using namespace std;
int main()
{
int n, score, max;
n = score = max = 0;
cin >> n;
for (int i = 0; i < n;i++)
{
cin >> score;
if (score> max) max = score;
}
cout << max << endl;
return 0;
}
许多问题都可以用循环来解决,如果遇到没有巧妙思路的难题,还可以用“暴力法” 即穷举来解决。
三.感悟
这一章我们学习了循环控制结构,学习了三种循环语句,在不断的出错和改错中也锻炼了我们的程序调试和排错能力。总的来说,这一章并不简单,有许多东西需要消化。
用循环解决问题是时十分考验我们的细心程度,因为稍有差错就会导致最终输出出现很大的错误 ,我就容易把for语句中三个表达式之间的分号写成逗号。还有还有一些困难的嵌套循环,更加考验我们的逻辑思维能力和耐心。通过本章学习我发现,要想编好程序不单单需要良好的逻辑思维能力和细心,还需要耐心和勇于尝试的心。因为连续的出错很容易让人放弃,要有十足的耐心才能不断找错,不断改正。除此之外,我们还要勇于尝试,敢于寻找巧妙的解题思路。