为了账号安全,请及时绑定邮箱和手机立即绑定

if表达式的值为1(即为真的话)是执行continue语句吗?

if表达式的值为1(即为真的话)是执行continue语句吗?

天涯尽头无女友 2022-05-31 15:14:42
对于下面程序if(a=1) continue;n++;我的问题是if表达式的值为1(即为真的话)是执行continue语句吧?因为我看到参考书上题目有的解析是if条件为真,则执行continue.而有的则是if条件为假,则执行continue.对于if语句,一般的话是if表达式为真,则执行if后面的语句,若为假则不执行.所以,不知道哪个是正确的?请高手帮忙解答下困惑.谢谢/.o,不过也一样,因为把1赋值给a表达式也为1,为真.这里我只是举个例子,问下关于if这个问题.因为做题目的时候遇到这样问题.
查看完整描述

3 回答

?
红糖糍粑

TA贡献1815条经验 获得超6个赞

continue是用在while或者for循环里面才有意义吧。

if语句与continue没有关系。所有的if语句都是:
if (condition) {
true-statements;
} else {
false-statements;
}

我猜参考书说的没错,是你理解错了。一个较完整的例子:
while (1) {
...
if (a == 1) continue;
n++;
...
}
如果a是1,则执行continue,结果是跳过if后面包括n++在内的所有语句,重新进入while顶部。
如果a不是1,就不执行continue。依次执行包括n++在内的所有语句。


查看完整回答
反对 回复 2022-06-06
?
呼如林

TA贡献1798条经验 获得超3个赞

这个问题,这样的,if里面为真肯定执行下面的语句啦。但是,你要注意continue的用法,这是个小细节。要注意continue在循环中的用法,你没有把其他语句写出来啦。
所以continue其作用是为结束本次循环。即跳出循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。
continue语句和break语句的区别是:continue语句只结束本次循环,而不终止整个循环的执行。而break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。

查看完整回答
反对 回复 2022-06-06
?
婷婷同学_

TA贡献1844条经验 获得超8个赞

if(a=1) continue;
首先你这句话写错了,应该是if(a==1) continue;
至于你的问题,当然是if后面的表达式为真才执行后面的continue

查看完整回答
反对 回复 2022-06-06
  • 3 回答
  • 0 关注
  • 410 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信