continue语句也是用于循环控制的语句,break语句中断循环并从循环体跳出,而continue语句则中断循环体后返回循环的开头。即跳过循环体中continue下面的语句,重新执行循环体。continue语句的一般形式如下(如图所示):
continue;
其执行过程是:终止当前的这一轮循环,即跳过continue后面的语句,重新回到循环体开始执行下一循环语句。
在while语句和do…while语句中,continue语句是中断执行并将控制恢复到该循环的开头。在for语句中,中断执行并将控制转向正在使用的表达式3(该表达式用于初始值的重新设定,通常处在循环的最后)。
示例:求20以内偶数的和。
#include <stdio.h>
void main()
{
int k = 1, s = 0;
do
{
if ((k % 2) != 0) /*判断k是否为偶数*/
{
k++;
continue; /*跳出本次循环,执行下一次循环*/
}
else
{
s += k;
k++;
}
} while (k < 20); /*20以内的数*/
printf("s=%d\n", s); /*输出结果*/
}
程序运行结果为:
s=90
示例:从键盘输入字符,统计其中数字字符的个数,直到输入 “换行”字符时结束。
#include <stdio.h>
void main()
{
char ch;
int sum;
sum = 0;
while (ch != '\n') /*如果输入的ch并非换行,执行下列操作*/
{
ch = getchar();
if (ch == '\n') /*如果ch为换行字符,即回车键*/
{
break; /*跳出循环*/
}
if (ch < '0' || ch > '9') /*如果为数字*/
{
continue; /*继续执行*/
}
sum++; /*sum值递增*/
}
printf("sum=%d", sum); /*输出sum的最终值*/
}
程序运行结果为:
abcd123efg456↙
sum=6
评论前必须登录!
注册