问题 单项选择题

以下程序执行后x的值是
main()
int x,y=252,i=386,*m=&y,*z=&i;
x=(z==y);
printf("%d",x);

A) 252
B) 1
C) 0
D) 运行时出错,x无定值

答案

参考答案:C

解析: 考查复合的赋值表达式。
[解题要点] 指针变量m和z分别指向整型变量y和i,所以这两个指针变量中存储的地址是不同的。变量x接受的是一个关系运算的结果,因为两个地址是不同的,所以“z=y”的判断结果为0。
[考点链接] C语言中,逻辑值的表示方法。

选择题
问答题 简答题