一 知识点总结。
1.循环语句的三种形式
①for语句为当型循环结构,for(初始化表达式;循环控制表达式;增值表达式)。
for语句中三个表达式之间分隔符是分号,一般情况下,循环控制表达式很少忽略,若省略,则表示循环条件永真。当已在for语句前面为循环控制变量赋初值时,初始化表达式可以省略;当已在循环体中改变了循环控制变量时,增值表达式可以省略。
②while语句属于当型循环,while(循环控制表达式)
③do-while语句属于直到型循环,do{}while(循环控制表达式);
do-while语句至少执行一次。
当循环次数已知时一般用for语句,未知时一般用while语句。
2.break语句用来退出循环结构。
3.continue语句用于结束本次循环,继续执行下一次循环。
4.嵌套循环
①不同的循环语句可以相互嵌套。
②外层循环变量每增加一,内层循环变量是从初值变到增值。
5.
(1)对求和变量赋初值放到循环前。
(2)for 语句末尾无分号(导致循环什么也不做)。
(3)while语句末尾加分号(导致死循环)。
(4)逗号运算符在所有运算符中优先级最低且具有左结合性。
6.穷举法
从1开始,试算,暴力求解
如找水仙花数,韩信点兵等。
二.能够解决的问题。
1.画出一些简单图形。如矩形 菱形 粘墙三角形等。
2.累加和问题,求最大最小值以及均值。
3.有关数字的位数,各项和顺序倒序输出问题。
例:金中的蛋糕裱花
#include<stdio.h>
int main()
{
int n,i,a,j,c;
scanf("%d",&n);
a=2*n-1;
for(i=1;i<=a;i++)
{
for(j=1;j<=a;j++)
{
if(j==n-i+1||j==n+i-1||j==i-n+1||j==a-i+n)
printf("*");
else printf(" ");
}
printf("\n");
}
}
三.感悟
在做这一章的练习题时,我明显的感觉到这章的练习题比前两次的练习题要难上了许多,不再是简单的一想就能够想出解决方法来,而是需要一定的思考之后,把逻辑搞清楚再写,不能直接就写,否则很容易把自己写糊涂,因为这一章练习题所使用的括号比较多,所以一定要搞清楚每个括号之间的关系。要想提高自己的编程能力,就要在空闲时间多多做练习题来提升自己的能力。多和同学交流,共同进步。