break
continue语句的作用也是使程序完成跳转,但它与break不相同,continue与break的区别有以下两点:
(1)break终止当前循环,执行循环体外的语句;而continue是终止本次循环,继续执行下一次循环。
(2)break语句可以用于switch语句,而continue不可以。
对上一节的例1进行修改,ch变量初始化为96(ASCII码表中字符‘a’的前一个字符),进入while循环,先进行ch自增运算,判断是否满足循环终止条件,如果满足,则跳出本次循环,继续执行下一次循环,具体实现如例1所示。
例1 continue.c
1 #include <stdio.h>
2 int main()
3 {
4 char ch = 96; //从字母a前一个字母开始
5 while (ch < 122)
6 {
7 ch++; //ch自增
8 if (ch == 116) //终止条件:ch的ASCII码值为116,即字符t
9 {
10 continue; //跳出本次循环
11 }
12
13 printf("%2c", ch); //满足条件,输出ch的值,输出宽度为2
14 }
15 printf("\n循环之后的代码\n"); //break跳出循环会继续执行循环后面的代码
16 return 0;
17 }
例1运行结果如图1所示。
图1 例1运行结果
在例1中,第4行代码定义了变量ch并初始化其值为96;第5~14行代码通过while循环输出除字符‘t’之外的其他小写英文字母。第7行代码执行ch++;第8~11行代码通过if语句判断ch==116是否成立,如果条件成立,则执行第10行代码,通过continue语句结束本次循环,继续下一次循环;如果条件不成立,则执行第13行代码,调用printf()函数输出ch的值。如此循环,直到ch<=122条件不成立,结束while循环。由图1可知,程序输出了除字母t之外的所有字母,然后又执行了循环之外的代码。