int a=3,b=4,c=5,执行!(x=a)&&(y=b)

C语言题目:设a=3,b=4,c=5,执行!(x=a)&&(y=b)&&0 逻辑表达式后,变量x 和y 的值为 A)3、4 B)x 和y 中的值不确定 C)3、不确定 D)不确定、4

C)3、不确定
由x=a得x==3
则!x==!3==0
,而逻辑与运算中只要有一个环节为0(假),那结果就是0,
于是后面的y=b就没必要执行了,那么y的值就无法确定了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-06-27
fun中
a的值是x的地址
b的值是y的地址
记住
a和b的值也是复制过来的
然后
你把他们的值交换了
想想看和x和y的地址有什么关系呢???
你在函数中
应该用int
c;c=*a;*a=*b;*b=c;
这样就通过地址修改了地址中的值
大家正在搜