作业帮 > 综合 > 作业

对下面的程序,描述正确的是______.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/12 05:33:49
对下面的程序,描述正确的是______.
#include
“stdio.h”
void
main()
{
int x=3,y=5;
if (x=y-4) printf(“*”);
else printf(“#”);
}
A)有语法错误 B)输出*
C)可以通过编译,但是不能通过连接,因而不能运行 D)输出#
首先,程序没有语法错误.其实,看执行,if的条件很关键.这里是x=y-4,注意这是一条赋值语句而不是条件语句.赋值的结果是x=4.出于编译系统自动进行类型转换的功能,放在if中,他会转换为一个布尔值真.所以,执行 printf(“*”);的语句,也就是输出*.结果就是B.
再问: 假设是赋值语句,是不是当写x==y-4?我是初学者,谢谢你的解答
再答: 赋值语句:x=y-4 条件判断语句:x==y-4 c语言中,==表示相等。