D选项的错误是在没有打花括号,但是c后面跟了一个分号,这不是错误吗?
我的理解是:A是C语言中的空语句的意思;B是三个语句组成的一条语句;D是if后只囊括了一条a=5然后if结束后有一条b=10的语句共两条语句;C语句是理解成if条件满足就执行空语句,毕竟空语句就是一个分号。即它是一个if与空语句组成的语句
C后面加上分号,表明if语句结束,没有花括号的话,一般if语句后面的第一个分号,就是if语句结束的标志,而D在a=5后有了一个分号,if语句到此结束,b=10就是第二条语句了