不正确的if语句


以下不正确的if语句形式是()

对a=0,b++;的意思是看成一条语句,2个操作

比如

if(a>1) a=0,b++;

等价如下:

if(a>1)

{

a=0;

b++;

}

如果是:

if(a>1) a=0; b++;

那么等价如下:

if(a>1)

{

a=0;

}

b++;

A中虽然后面部分是正确的,但是if(a<b);这么快就分号了,语法就不正确嘛

B中,应该是分号结束,但是它这样写也没表示它错啊,同上面的问题,是不是后面还有代码没写出来?还是多想了?确实多想了,这个选项是错的。

D中,只是一个没写完的语句,能够判断它是错的吗?不要多想就是错的

最后解释:

这道题的题目就写错了,应该是以下正确的if语句形式是()

希望采纳谢谢

c语言中if语句常见的错误有哪些

常见错误有if语句后面直接加分号,语法没有错,但是if语句的执行语句为空语句,逻辑上没有达到分支结构的要求,程序的运行结果和设计预期的有差异,还有就是if语句的执行语句是多条语句,要用大括号包含起来,else要与if配套使用,if和else之间不能有其他语句,也就是如果你需要用else语句,必须在if语句的执行后就用else语句,中间不能执行其他语句,最后就是if语句中的条件判断非零为真,在判断比较关系运算符==容易写成赋值运算符=,避免的方法就是常量写左边,变量写右边,比如:if(0==a),判断当a等于0时条件成立,如果不小心写成if(0=a),编译器会报错,而if(a=0),编译器不会报错,条件永远为假,if语句永远不执行。