C语言循环控制
七777 人气:0循环控制:
for 循环
for (语句1; 表达式; 语句2) { 语句块 }
1)循环开始时,先执行语句1。
2)接着判断表达式的条件,如果条件成立,就执行一次循环体中的语句块。
3)语句块执行完后,接下来会执行语句2。
4)重复第2)步和第3),直到表达式的条件不成立才结束for循环。
常见形式:
for (int i = 0; i < n; i++)
while 循环
while (语句1) { 语句块 }
语句1为真时 执行循环
常见形式:
while (n--) // 循环n次
do while 循环
do { 语句块 } while (语句1)
do while先执行一次循环,然后再判断表达式的值,如果为真,再执行一次循环体,如此重复下去
switch case
switch(表达式) { case 整型数值1: 语句 1; case 整型数值2: 语句 2; ...... case 整型数值n: 语句 n; default: 语句 n+1; }
执行过程:
1 ) 首先计算“表达式”的值,假设为 m。
2 )从第一个 case 开始,比较“整型数值1”和 m,如果它们相等,就执行冒号后面的所有语句,也就是从“语句1”一直执行到“语句n+1”,而不管后面的 case 是否匹配成功。
3 ) 如果“整型数值1”和 m 不相等,就跳过冒号后面的“语句1”,继续比较第二个 case、第三个 case……一旦发现和某个整型数值相等了,就会执行后面所有的语句。假设 m 和“整型数值5”相等,那么就会从“语句5”一直执行到“语句n+1”。
4 ) 如果直到最后一个“整型数值n”都没有找到相等的值,那么就执行 default 后的“语句 n+1”。
break:
跳出循环语句 (for循环、while循环、do...while循环)
跳出switch语句
continue:
只用于结束本次循环(for循环、while循环、do...while循环),进行下一次循环
注意: continue是结束本次循环,继续下一次循环,完成代码跳转,并不是继续向下顺序执行的意思。
break continue 区别:
break 是结束整个循环过程,不再判断执行循环的条件是否成立;continue 语句则只结束本次循环,不是终止整个循环,还会继续判断循环的条件是否成立。
演示代码如下:
for(i=0;i<5;i++) //第一层循环 { for(j=0;j<5;j++) //第二层循环 { function_a(); //功能函数 a if(j>=2) { break; //或continue ; } } }
1)如果为 break 当 j = 2 时,执行完break; 程序会直接跳出第二层循环,去执行第一层循环的 i++ ;
2)如果为 continue 当 j = 2时,执行完continue;程序将结束本次循环,继续下一次循环,去执行 j++;
3)如果满足 j < 5 则会继续进入第二层循环继续执行 ,即continue不会跳出第二层循环。
!!:break 只能跳出一层循环。当有多层循环嵌套的时候,break只能跳出“包裹”它的最里面的那一层循环,无法一次跳出所有循环。
总结
加载全部内容