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

admin2010-06-06  25

问题 下面的程序的结果是    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。
转载请注明原文地址:https://kaotiyun.com/show/Aejp777K
0

最新回复(0)