c语言goto跳转语句
goto语句有两部分:goto与标签,标签遵循变量命名规则。goto part2;
goto语句使程序控制跳转至相应的标签语句。冒号用于分隔标签和标签语句,标签名遵循变量名的命名规则,同时标签也可以在goto语句的上面或者下面。
#include<stdio.h>
int main()
{
int size,flag,num;
num = 4;
scanf_s("%d", &size);
if (size > 12)
goto a;
goto b;
a:size *= 1.05;
flag = 2;
b:num =size*flag;
printf("%d %d %d \n",size,flag,num);
return 0;
输入:14
输出:14 2 28
#include<stdio.h>
int main()
{
char ch;
while ((ch = getchar()) == '#')
{
if (ch == '\n')
continue;
printf("step1\n");
if (ch == 'c')
continue;
else if (ch == 'b')
break;
else if (ch == 'h')
goto laststep;
printf("step2\n");
laststep: printf("step3\n");
}
printf("Done\n");
return 0;
}
程序执行:
q
step1
step2
step3
c
step1
h
step1
step3
b
step1
Done
goto语句早期非常适用与FORTRAN和BASIC,并且分成以来goto来编程。但是现在在c语言中要克制使用goto语句,更加有用的时break和continue语句,
使用break和continue的好处是:不使用标签,不用担心标签放错位置而导致危险的运行,另外其名称已经表明了他们的用法。