C语言基础-跳转语句
C语言跳转语句详解:break、continue、goto、return
在编写 C 语言程序时,有时我们需要提前退出循环、跳过某次执行,甚至跳转到程序中的其他位置。这就用到了跳转语句(Jump Statements)。
C语言提供了以下常用跳转语句:
break:跳出当前循环或switchcontinue:跳过当前循环剩余部分,进入下一次循环goto:无条件跳转到程序中指定标签(不推荐)return:结束当前函数的执行,返回调用者
一、break:中断循环或 switch
用法说明:
- 用于
while、for、do while或switch中; - 作用是立即跳出所在的循环/
switch。
示例:
#include <stdio.h>
int main(void) {
for (int i = 1; i <= 10; i++) {
if (i == 5) break;
printf("%d ", i);
}
// 输出:1 2 3 4
return 0;
}
当 i == 5 时,执行 break,整个循环提前结束。
二、continue:跳过本次循环剩余部分
用法说明:
- 用于循环语句中;
- 当前迭代中遇到
continue,后续语句不再执行,直接进入下一次循环判断。
示例:
#include <stdio.h>
int main(void) {
for (int i = 1; i <= 5; i++) {
if (i == 3) continue;
printf("%d ", i);
}
// 输出:1 2 4 5(跳过了3)
return 0;
}
三、goto:无条件跳转(慎用)
用法说明:
goto可以跳转到同一函数内的任意标签;- 使用格式:
goto 标签名;
// ...
标签名:
示例:
#include <stdio.h>
int main(void) {
int num;
printf("请输入正数:");
scanf("%d", &num);
if (num < 0)
goto error;
printf("你输入的是正数 %d\n", num);
return 0;
error:
printf("错误:不能输入负数!\n");
return 1;
}
使用建议:
goto会让程序流程变得混乱,不推荐在非必要情况下使用;- 可用于跳出多重嵌套循环或处理错误时集中释放资源。
四、return:返回函数调用处
用法说明:
return用于函数中;- 用于结束当前函数执行,并将控制权返回给调用者;
- 可以携带返回值(如果函数类型不是
void)。
示例:
#include <stdio.h>
int square(int n) {
return n * n;
}
int main(void) {
int res = square(5);
printf("5 的平方是 %d\n", res);
return 0;
}
五、break vs continue vs return:对比表
| 语句 | 用途说明 | 可用位置 | 行为 |
|---|---|---|---|
break |
终止当前循环/switch |
循环、switch | 跳出当前语句块 |
continue |
跳过本轮,继续下一轮 | 循环内部 | 直接进入下一次循环判断 |
goto |
跳转到指定标签 | 函数内部任意位置 | 无条件跳转(不推荐) |
return |
结束函数并返回 | 函数体内 | 返回给调用者,可携带返回值 |
本文来自博客园,作者:ffff5,转载请注明原文链接:https://www.cnblogs.com/ffff5/p/19012986

浙公网安备 33010602011771号