早教吧 育儿知识 作业答案 考试题库 百科 知识分享

对下面的程序,描述正确的是.#include“stdio.h”voidmain(){intx=3,y=5;if(x=y-4)printf(“*”);elseprintf(“#”);}A)有语法错误B)输出*C)可以通过编译,但是不能通过连接,因而不能运行D)输出#

题目详情
对下面的程序,描述正确的是______.
#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.