问题 单项选择题

下面的程序的结果是 main() {int x=3,y=0,z=0; if(x=y+z)cout<<"* * * *"; else cout<<"# # # #"; }

A.有语法错误不能通过编译

B.输出* * * *

C.可以通过编译,但是不能通过连接,因而不能运行

D.输出# # # #

答案

参考答案:D

解析: 注意本题本意是考察x==y+z,但是少写了一个=,因此逻辑表达式变成了赋值语句,故x的值为0,即假,因此程序执行else部分。本题答案为D。

多项选择题
单项选择题