循环控制结构学习总结

循环控制结构学习总结

循环语句与之前所学的顺序、选择控制结构相比,困难了不少,需要的思考也更多,而且在题目之中,也有许多是和选择控制结合运用,更是添加了不少难度。
从最基本的for语句、while语句、do-while语句学起。如果循环次数已知,计数控制的循环用for;如果循环次数未知,条件循环控制用while;循环至少执行一次,用do-while。while和for语句的条件控制表达式在循环体前部,do-while语句则是在循环体尾部。循环体内可以进行数据的定义,此数据只能在循环体中使用。
循环语句使用时候需要仔细,否则容易使循环语句变成死循环,例如while(i<=n);一个分号使循环体与控制表达式分离,导致表达式恒成立,循环无法停止,变成了死循环。
除了循环的语句学习,还有一个一直使用的运算符——逗号运算符,也叫顺序求值运算符,顾名思义,它的作用就是实现对各个表达式的顺序求值 。
另外一个是为了随机数的选取,引进来了一个新函数 srand(seed)为函数rend()设置随机种子,表示所取得随机数的范围用int magic;magic=rend()%100表示0—99的整数,若不从0开始选取则在100后面加+所需值。
而对循环体内部进行控制的break语句 , continue语句也是要点。break语句除用于退出switch语句结构,还可以用于while,do—while,for构成的循环语句的循环体中,当执行循环体遇到break语句时,循环语句后的第一条语句开始继续执行;而在循环体中遇到continue语句时,程序将跳过continue语句后面尚未执行的语句,开始下一次循环,直接输本次循环的执行,不终止整个循环的执行 。
对于练习的题目,刚开始接触循环语句的题目的时候 ,不懂怎么输入多组数据来比较大小,顺序结构是一次性输入多组数据,同时进行比较,操作比较麻烦,而后来知道了for语句while语句可以多次输入多次比较,每次只比较一组数据,留大去小,实现最取大值的目的 ,而这让我真正体会到了“循环”的含义。循环语句里最让人眼前一亮的还是他与if语句结合制作图形的题目,这就用到了多个循环语句的复合嵌套使用,基本思路是让两个循环语句分别控制行与列,也就是确定了一个矩形,再利用if条件语句控制一些区域是字符还是空格,if语句中的判断语句是思考的重点,判断句可以说是简单的函数题了,写出满足要求i与j的条件式,图形就完成了。同时,为了应对循环语句中的一些题目,老师也向我们介绍了一种万能方法——穷举法,也叫暴力法,所谓穷举法简单的说,就是通过尝试问题的所有可能,来得到最终答案。举个例子,求得某一个数,是另外三个数的最小公倍数,利用穷举法只要一个for循环和一个if语句的关系式子就可以解决。
另外还有标志变量,例如:find标志变量,先定义find为假既find=0,所以!find表示为真,“!find”表示find的逻辑非,既find=1,“find”标志变量可以用在结束程序的运行。
学习了循环语句后,才更加明白“好”程序的意义,“好”最重要的是程序的结构好,也就是结构要清晰。根据编程得需要,有时需要while循环,for循环语句嵌套使用,如果不注意结构的清晰,就容易带来错误 。在学习过程中,出现错误很正常,这就要求我们提高排错能力 ,老师说过找错误有静态和动态 ,而要提升能力多训练,多练习,Practice make perfect。还有就是要注重思考吧,做循环语句的训练题目,如果不能从一开始就有一个正确的思路,很容易就“误入歧途”,难以拿到AC,总之坚持练习,多敲代码多思考才是进步的道路。

猜你喜欢

转载自blog.csdn.net/qq_43627886/article/details/84893844