30-总结_程序跳转
B.4.7 总结:程序跳转
关键字: break 、 continue 、 goto
一般注解:
这3种语句都能使程序流从程序的一处跳转至另一处。
break
语句:
所有的循环和 switch 语句都可以使用 break 语句。它使程序控制跳出当前循环或 switch 语句的剩余部分,并继续执行跟在循环或 switch 后面的语句。
示例:
while ((ch = getchar()) != EOF)
{
putchar(ch);
if (ch == ' ')
break; // 结束循环
chcount++;
}
continue
语句:
所有的循环都可以使用 continue 语句,但是 switch 语句不行。 continue 语句使程序控制跳出循环的剩余部分。对于 while 或 for 循环,程序执行到 continue 语句后会开始进入下一轮迭代。对于 do while 循环,对出口条件求值后,如有必要会进入下一轮迭代。
示例:
while ((ch = getchar()) != EOF)
{
if (ch == ' ')
continue; // 跳转至测试条件
putchar(ch);
chcount++;
}
以上程序段打印用户输入的内容并统计非空格字符
goto
语句:
goto 语句使程序控制跳转至相应标签语句。冒号用于分隔标签和标签语句。标签名遵循变量命名规则。标签语句可以出现在 goto 的前面或后面。
形式:
goto label ;
.
.
.
label : statement
示例:
top : ch = getchar();
.
.
.
if (ch != 'y')
goto top;