- 循环和switch专属的跳转:break
- 循环专属的跳转:continue
- 无条件跳转:goto
break
- 循环的break说明
- 某一条件满足时,不再执行循环体中后续重复的代码,并退出循环
- 需求:一共吃5碗饭, 吃到第3碗吃饱了, 结束吃饭动作
- 示例代码:
#include <stdio.h>
int main() {
int i = 1;
while (i <= 5) {
if (i == 3) {
printf("吃饱了,不吃了\n");
break;
}
printf("吃第 %d 碗饭\n", i);
i++;
}
return 0;
}
continue
- 某一条件满足时,不再执行本次循环体中后续重复的代码,但进入下一次循环判断
- while循环,continue 之前一定要修改计数器(条件变量),否则,导致死循环
- 需求:一共吃5个苹果,吃到第3个遇到虫子,这个跳过不吃,下一个继续
- 示例代码:
#include <stdio.h>
int main() {
int i = 1;
while (i <= 5) {
if (i == 3) {
printf("这个有虫子,不吃了\n");
i++;
continue;;
}
printf("吃第 %d 个苹果\n", i);
i++;
}
return 0;
}
goto
- goto用于无条件跳转
- 在一种情况下可以使用goto语句:从一组嵌套的循环中跳出
- goto语句可以导致代码不易理解和维护,并且容易引入不必要的错误。因此,除非必要,最好不要使用goto语句
- 示例代码:
#include <stdio.h>
int main() {
goto End;
printf("aaaaaaaaa\n");
End:
printf("bbbbbbbb\n");
return 0;
}