📄 013.htm
字号:
<BR>
.
<BR>
.
<BR>
case 常量n;
<BR>
语句n或空;
<BR>
default:
<BR>
语句n+1或空;
<BR> }
<BR> 执行switch开关语句时, 将变量逐个与case后的常量进行比较,
若与其中一
<BR>个相等, 则执行该常量下的语句, 若不与任何一个常量相等, 则执行default
后
<BR>面的语句。
<BR> 注意:
<BR> 1. switch中变量可以是数值, 也可以是字符。
<BR> 2. 可以省略一些case和default。
<BR> 3. 每个case或default后的语句可以是语句体, 但不需要使用"{"和"}"括起
<BR>来。
<BR> 下例的switch中变量为整数型。
<BR> 例19:
<BR> main()
<BR> {
<BR> int test;
<BR> for(test=0;
test<=10; test++)
<BR> {
<BR>
switch(test) /*变量为整型数的开关语句*/
<BR>
{
<BR>
case 1:
<BR>
printf("%d\n", test);
<BR>
break; /*退出开关语句*/
<BR>
case 2:
<BR>
printf("%d\n", test);
<BR>
break;
<BR>
case 3:
<BR>
printf("%d\n", test);
<BR>
break;
<BR>
default:
<BR>
puts("Error");
<BR>
break;
<BR>
}
<BR> }
<BR> }
<BR> 下例的switch中变量为字符型。
<BR> 例20:
<BR> #include<stdio.h>
<BR> main()
<BR> {
<BR> char c;
<BR> while(c!=27)
/*循环直到按Esc键结束*/
<BR> {
<BR>
c=getch();
/*从键盘不回显接收一个字符*/
<BR>
switch(c)
<BR>
{
<BR>
case 'A': /*接收的字符为'A'*/
<BR>
putchar(c);
<BR>
break; /*退出开关语句*/
<BR>
case 'B':
<BR>
putchar(c);
<BR>
break;
<BR>
default:
/*接收的字符非'A'和'B'*/
<BR>
puts("Error");
<BR>
break;
<BR>
}
<BR> }
<BR> }
<BR>
<BR>
<BR>
<P> 1.3.4 break、continue和goto语句
<BR>
<P> 1.3.4.1 break语句
<BR> break语句通常用在循环语句和开关语句中。当break用于开关语句switch中
<BR>时, 可使程序跳出switch而执行switch以后的语句; 如果没有break语句,
则将
<BR>成为一个死循环而无法退出。break在switch 中的用法已在前面介绍开关语句时
<BR>的例子中碰到, 这里不再举例。
<BR> 当break语句用于do-while、for、while循环语句中时,
可使程序终止循环
<BR>而执行循环后面的语句, 通常break语句总是与if语句联在一起。 即满足条件时
<BR>便跳出循环。
<BR> 例19:
<BR> main()
<BR> {
<BR> int i=0;
<BR> char c;
<BR> while(1)
/*设置循环*/
<BR> {
<BR>
c='\0';
/*变量赋初值*/
<BR>
while(c!=13&&c!=27) /*键盘接收字符直到按回车或Esc键*/
<BR>
{
<BR>
c=getch();
<BR>
printf("%c\n", c);
<BR>
}
<BR>
if(c==27)
<BR>
break; /*判断若按Esc键则退出循环*/
<BR>
i++;
<BR>
printf("The No. is %d\n", i);
<BR> }
<BR> printf("The
end");
<BR> }
<BR> 注意:
<BR> 1. break语句对if-else的条件语句不起作用。
<BR> 2. 在多层循环中, 一个break语句只向外跳一层。
<BR>
<P> 1.3.4.2 continue 语句
<BR> continue语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。
<BR> continue语句只用在for、while、do-while等循环体中,
常与if条件语句一
<BR>起使用, 用来加速循环。
<BR> 例20:
<BR> main()
<BR> {
<BR> char c;
<BR> while(c!=0X0D)
/*不是回车符则循环*/
<BR> {
<BR>
c=getch();
<BR>
if(c==0X1B)
<BR>
continue; /*若按Esc键不输出便进行下次循环*/
<BR>
printf("%c\n", c);
<BR> }
<BR> }
<BR>
<P> 1.3.4.3 goto 语句
<BR> goto语句是一种无条件转移语句, 与BASIC中的goto语句相似。goto
语句的
<BR>使用格式为:
<BR> goto 标号;
<BR> 其中标号是Turbo C2.0中一个有效的标识符, 这个标识符加上一个":"
一起
<BR>出现在函数内某处, 执行goto语句后, 程序将跳转到该标号处并执行其后的语句。
<BR>另外标号必须与goto语句同处于一个函数中, 但可以不在一个循环层中。
通常
<BR>goto语句与if条件语句连用, 当满足某一条件时, 程序跳到标号处运行。
<BR> goto语句通常不用, 主要因为它将使程序层次不清, 且不易读,
但在多层嵌
<BR>套退出时, 用goto语句则比较合理。
<BR> 例19用goto语句时变为:
<BR> 例21:
<BR> main()
<BR> {
<BR> int i=0;
<BR> char c;
<BR> while(1)
<BR> {
<BR>
c='\0';
<BR>
while(c!=13)
<BR>
{
<BR>
c=getch();
<BR>
if(c==27)
<BR>
goto quit;
<BR>
printf("%c\n", c);
<BR>
}
<BR>
i++;
<BR>
printf("The No. is %d\n", i);
<BR> }
<BR> quit:
<BR>
printf("The end");
<BR>
<hr color="#EE9B73" size="1" width="94%">
</TD>
<TD CLASS="tt3" VALIGN="bottom" width="8%" bgcolor="#e0e0e0"><strong><A HREF="014.htm">后一页</A><BR>
<A HREF="012.htm">前一页</A><BR>
<A HREF="index.html">回目录</A><BR>
<A HREF="../../../../index.htm">回首页</A><BR>
</strong>
</TD>
</TR>
</table>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -