1.for循环
一般形式for(初始动作;条件;每轮执行的动作){ }
for(int i=1;i<=n;i++){ sum= sum*i; }
Tip:做求和的程序时,i可初始化为0;做求积达变量时,i可初始化为1。
2.while循环
一般形式:while(表达式) 循环语句;
int i=1; int sum=0; while (i<=n) { sum=sum*i; i++; }
首先 求表达式的值,如果其值为真非0,则执行循环语句,再次求表达式的值,一直循环,直到表达式的值为假(0)为止。
Tip:注意条件要有合适的变量控制循环,否则可能会死循环。
3.do-while语句
(1)一般形式:do{ 循环体语句 }while(表达式)
(2)先循环再判断,所以至少执行一次
4.for VS while VS do-while
(1)在没有continue的情况下for与while等价
(2)不确定循环次数时,用while语句,以一个特殊的数据作为结束标志 即控制循环。确定循环次数,用for循环。
(3)必须执行一次的时候用do-while
5.break vs continue
(1)break语句:直接跳出循环
(2)Continue 语句:跳过continue后面的语句,继续下一次循环
(3)contine意味立即执行测试部分;for循环中意味着使控制转移到递增循环变量部分。
6.goto 语句:最好只用与多重循环
讨论:
1.不设isPrime,直接利用循环出口处循环变量和终点值的关系来判断循环是否break了。你觉得这种做法好吗?
不好,不便于理解,可能会造成让别人看不懂代码的情况,可能会造成答案错误的情况。
2.goto怎么了?为什么课程中说goto的名声不好?用goto会怎么不好了?
goto会破坏程序的结构性,使得程序的可读性变差,从而可能会让错误通过编译,且不易找出错误。