while语句中的break和continue
1.break
语句
-
作用:立即终止当前所在层的循环。
-
特点:一旦执行到
break
,循环立刻结束,无论循环条件是否还满足。 -
例子:
int i = 1;
while (i <= 10)
{if (i == 5)break; // 当i为5时跳出循环printf("%d ", i);i++;
}
输出:1 2 3 4
2. continue
语句
-
作用:跳过本次循环中
continue
之后的代码,直接进入下一次循环的条件判断。 -
注意:使用不当可能导致死循环(如跳过循环变量的更新)。
执行流程
使用例子:
#include <stdio.h>
int main()
{int i = 0;while (i < 5) {i++;if (i == 3) {continue; // 当i等于3时,跳过本次循环的剩余部分}printf("%d ", i);}return 0;
}
输出结果:1 2 4 5
说明:当i == 3
时,continue
跳过了printf
语句,所以数字3没有被打印。
3. 实际应用示例
-
题目:连续输入字符,只输出数字字符,跳过非数字字符。
- 答案:
#include <stdio.h>
int main()
{int ch;while ((ch = getchar()) != EOF) {if (ch < '0' || ch > '9')continue; // 跳过非数字字符putchar(ch);}return 0;
}
解释:if (ch < '0' || ch > '9')是表示如果出现在字符0和字符9之外的值则执行 continue
不知道getchar和putchar的看这里:getchar 和 putchar-CSDN博客