跳转语句

来源:互联网 发布:电子商务专业工资知乎 编辑:程序博客网 时间:2024/06/05 05:04

goto: 

goto语句是一种无条件转移语句

goto 语句的使用格式为: goto  语句标号;

1.标号需要申请,在程序开头写label <标号1>,<标号2>,……;

2.标号必须为四位以内的正整数
3.在该段落内还需要有<标号>:语句表示将要转向的方向。

4.不能跨函数跳。
其中标号是一个有效的标识符,这个标识符加上一个“:”一起出现在函数内某处,执行goto语句后,程序将跳转到该标号处并执行其后的语句。另外标号必须与goto语句同处于一个函数中,但可以不在一个循环层中。通常goto语句与if条件语句连用,当满足某一条件时,程序跳到标号处运行。
goto语句通常不用,主要因为它将使程序层次不清,且不易读,但在多层嵌套退出时,用goto语句则比较合理。


break:

break语句通常用在循环语句和开关语句中。

1.当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;

2.如果没有break语句,则会从满足条件的地方(即与switch(表达式)括号中表达式匹配的case)开始执行,直到switch结构结束。
3.当break语句用于do-while、for、while循环语句中时,可使程序终止循环。而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。

例:
main()
{
int i=0;
char c;
while(1) /*设置循环*/
{
c='\0'; /*变量赋初值*/
while(c!=13&&c!=27) /*键盘接收字符直到按回车或Esc键*/
{
c=getch();
printf("%c\n",c);
}
if(c==27)
{

break; /*判断若按Esc键则退出循环*/
}

i++;
printf("The No. is %d\n",i);
}
printf("The end");
}


注意:
1. break语句对if-else的条件语句不起作用。
2. 在多层循环中,一个break语句只向外跳一层


return :

return语句是将函数的值返回主调函数,跳出当前函数。

例:
int max(int a,int b)
{
if(a>b)return a;
else return b;
}
这个函数是返回a和b中的最大值;
return  语句的一般形式为:
return 表达式 
或者为:
return (表达式)


continue:

continue语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。
例:
void main()
{
char c;
while(c!=13)      /*不是回车符则循环*/
{
c=getch();
if(c==0X1B)
{

continue; 

}/*若按Esc键不输出便进行下次循环*/
printf("%c\n", c);
}
}
其实就是continue跳过一次循环以及后面的语句,进行下次循环。

在for循环中往表达式2中跳,在while( )中往括号跳。

原创粉丝点击