int main() { int a=5,b=0,c=0; if (a=b+c) printf ("***\n"); else printf("$$$\n"); return 0; }
有语法错不能通过编译
可以通过编译但不能通过连接
输出***
输出$$$
【解释】if后面的表达式可以是任何类型的表达式,当然可以是赋值表达式,所以答
案A和B是错误的,因赋值表达式的值为0(即为假),所以执行else后的语句,输出$$$。
故正确答案是D。
都没有#include<stdio.h>,是怎么通过编译和运行的??
#include<stdio.h>
此处,先讲b+c的值赋给a,然后判断a
if后面的表达式可以是任何类型的表达式,当然可以是赋值表达式,所以答
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
【解释】if后面的表达式可以是任何类型的表达式,当然可以是赋值表达式,所以答
案A和B是错误的,因赋值表达式的值为0(即为假),所以执行else后的语句,输出$$$。
故正确答案是D。