在C语言中if()语句后跟个continue是什么意思?

 我来答
胡说八道小鬼4e161e
2018-06-07 · TA获得超过1.2万个赞
知道小有建树答主
回答量:816
采纳率:100%
帮助的人:24.2万
展开全部

continue 表示终止本次(本轮)循环。当代码执行到continue时,本轮循环终止,进入下一轮循环,具有过滤功能。

例子:

continue只对直接包含它的循环体有效(也就是for,while, 而switch{}中的不算循环体);

拓展资料

比如在不包含switch的代码中出现continue,continue跳出本次循环.

continue出现在switch块中,因为continue的作用范围仅针对 for while 之类的循环语句,故不起作用,依旧跳出本次循环。

输出: 

flag:0

C语言三大循环、四大跳转和判断语句

三大循环for while 和 do{ }while;

四大跳转 :无条件跳转语句 go to;跳出循环语句 break;继续跳出循环语句 continue;返回值语句 return

判断语句 if,if else,if else if else if...else

风若远去何人留
2015-07-01 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450134
专业C/C++软件开发

向TA提问 私信TA
展开全部

continue语句用于循环语句中,作用是不执行循环体剩余部分,直接进行下次循环。

常见的就是与if连用。

比如下面这个程序:

int main()
{
    int i;
    for(i = 0; i < 10; i ++)
    {
        if(i%2==0) continue;//如果i为偶数 调用continue;
        printf("%d,", i);//输出i值
    }
}

这个程序会循环10次,i值为0到9.

当i为0,2,4,6,8时,满足i%2==0的条件,执行continue语句,进入下次循环,不会执行printf语句。

所以这个程序只会输出奇数值,即

1,3,5,7,9,

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chiconysun
2011-06-11 · TA获得超过2.2万个赞
知道大有可为答主
回答量:5410
采纳率:92%
帮助的人:2614万
展开全部
该if语句应该是包含在循环当中的,continue表示满足if条件则提前结束循环体的后面的语句,回到循环条件判断是否再循环
追问
main() { int a[4][4]={{1,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}};   int i,j,s=0;   for(i=0;i<4;i++) { for(j=0;j<4;j++)    { if(a[i][j]<0)continue; if(a[i][j]= =0)break; s+=a[i][j]; } } printf("%d\n",s); }怎么做啊,主要是分析,谢谢了
追答
main()
{
int a[4][4]={{1,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}};
int i,j,s=0;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(a[i][j]<0)
continue;继续j循环
if(a[i][j]==0)
break; 跳出内循环j
s+=a[i][j];
}
}
printf("%d\n",s);
}
结果58 = 1 + 2 + 23 + 32
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友542bc4f9c
2011-06-11 · TA获得超过351个赞
知道小有建树答主
回答量:115
采纳率:0%
帮助的人:112万
展开全部
continue的语法是回到循环开始继续执行,我想在if()这里应该有个循环吧。
比如:
int sum = 0;
for(i=1;i<=5;i++){
if(i==3){
continue;
}
sum = sum + i;
}
sum最后输出是12,在i = 3处回到了循环开始,没有执行sum = sum + i.
追问
main() { int a[4][4]={{1,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}};   int i,j,s=0;   for(i=0;i<4;i++) { for(j=0;j<4;j++)    { if(a[i][j]<0)continue; if(a[i][j]= =0)break; s+=a[i][j]; } } printf("%d\n",s); }答案是多少啊?怎么分析地呢?谢谢你了
追答
应该是3吧,a[i][j]= =0就跳出循环了,所以遇到第一个0,循环就结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
莫小贤
2019-12-22 · 前端开发与AR应用开发
莫小贤
前端开发与AR应用开发
采纳数:50 获赞数:656
云南大学软件学院

向TA提问 私信TA
展开全部
是继续的意思,如果你当前的条件不满足,程序会自己继续执行下面的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式