猿问

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

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

天涯尽头无女友
浏览 411回答 3
3回答

红糖糍粑

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++在内的所有语句。

呼如林

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

婷婷同学_

if(a=1) continue;首先你这句话写错了,应该是if(a==1) continue;至于你的问题,当然是if后面的表达式为真才执行后面的continue
随时随地看视频慕课网APP
我要回答