c语言goto里面break,请问break、continue和goto语句在C语言中的区别和用法?

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

滕州生活网www.tz365.CN

时, 可使程序跳出switch而执行switch以后的语句; 如果没有break语句, 则将 copyright tz365.cn

成为一个死循环而无法退出。

www.Tz365.cn

当break语句用于do-while、for、while循环语句中时, 可使程序终止循环

copyright tz365.cn

而执行循环后面的语句, 通常break语句总是与if语句联在一起。 即满足条件时

www.Tz365.cn

便跳出循环。 www.tz365.Cn

例: www.tz365.Cn

main()

copyright tz365.cn

{

copyright tz365.cn

int i=0;

www.tz365.Cn

char c; www.Tz365.cn

while(1) /*设置循环*/

滕州生活网(TZ365.cn)

{

copyright tz365.cn

c=’\0′; /*变量赋初值*/

copyright tz365.cn

while(c!=13&&c!=27) /*键盘接收字符直到按回车或Esc键*/ 滕州生活网www.tz365.CN

{ copyright tz365.cn

c=getch(); copyright tz365.cn

printf(“%c\n”, c); copyright tz365.cn

}

滕州生活网www.tz365.CN

if(c==27)

www.Tz365.cn

break; /*判断若按Esc键则退出循环*/ www.tz365.Cn

i++;

www.Tz365.cn

printf(“The No. is %d\n”, i);

滕州生活网www.tz365.CN

}

滕州生活网www.tz365.CN

printf(“The end”);

滕州生活网(TZ365.cn)

} copyright tz365.cn

注意:

www.tz365.Cn

1. break语句对if-else的条件语句不起作用。

滕州生活网(TZ365.cn)

2. 在多层循环中, 一个break语句只向外跳一层。

www.tz365.Cn

滕州生活网www.tz365.CN

continue语句的作用是跳过本循环中剩余的语句而强行执行下一次循环。 滕州生活网www.tz365.CN

continue语句只用在for、while、do-while等循环体中, 常与if条件语句一

copyright tz365.cn

起使用, 用来加速循环。 www.tz365.Cn

例:

www.tz365.Cn

main() 滕州生活网(TZ365.cn)

{

www.Tz365.cn

char c;

滕州生活网www.tz365.CN

while(c!=0X0D) /*不是回车符则循环*/ www.tz365.Cn

{ 滕州生活网(TZ365.cn)

c=getch();

滕州生活网(TZ365.cn)

if(c==0X1B) 滕州生活网www.tz365.CN

continue; /*若按Esc键不输出便进行下次循环*/ 滕州生活网(TZ365.cn)

printf(“%c\n”, c);

www.tz365.Cn

}

滕州生活网(TZ365.cn)

}

copyright tz365.cn

www.tz365.Cn

goto语句是一种无条件转移语句, 与BASIC中的goto语句相似。goto 语句的 www.Tz365.cn

使用格式为:

www.tz365.Cn

goto 标号; www.tz365.Cn

其中标号是Turbo C2.0中一个有效的标识符, 这个标识符加上一个”:” 一起 www.tz365.Cn

出现在函数内某处, 执行goto语句后, 程序将跳转到该标号处并执行其后的语句。

www.Tz365.cn

另外标号必须与goto语句同处于一个函数中, 但可以不在一个循环层中。通常

www.tz365.Cn

goto语句与if条件语句连用, 当满足某一条件时, 程序跳到标号处运行。 滕州生活网(TZ365.cn)

goto语句通常不用, 主要因为它将使程序层次不清, 且不易读, 但在多层嵌 滕州生活网www.tz365.CN

套退出时, 用goto语句则比较合理。

www.tz365.Cn

例: 滕州生活网(TZ365.cn)

main()

滕州生活网www.tz365.CN

{

www.Tz365.cn

int i=0; www.Tz365.cn

char c; 滕州生活网www.tz365.CN

while(1) www.Tz365.cn

{ copyright tz365.cn

c=’\0′;

www.tz365.Cn

while(c!=13) 滕州生活网(TZ365.cn)

{

滕州生活网(TZ365.cn)

c=getch();

copyright tz365.cn

if(c==27) www.tz365.Cn

goto quit; www.Tz365.cn

printf(“%c\n”, c); 滕州生活网www.tz365.CN

} 滕州生活网www.tz365.CN

i++; www.tz365.Cn

printf(“The No. is %d\n”, i); 滕州生活网(TZ365.cn)

} copyright tz365.cn

quit: 滕州生活网(TZ365.cn)

printf(“The end”); 滕州生活网(TZ365.cn)

}

copyright tz365.cn

copyright tz365.cn

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值