c语言 求解 有以下程序 #include <stdio.h> voi

c语言求解有以下程序#include<stdio.h>voidfun(int*a,int*b){int*c;c=a;a=b;b=c;}main(){intx=3,y=5,... c语言 求解

有以下程序
#include <stdio.h>
void fun( int *a,int *b)
{ int *c;
c=a;a=b;b=c;
}
main()
{ int x=3, y=5, *p=&x, *q=&y ;
fun(p,q); printf("%d,%d,",*p,*q);
fun(&x,&y); printf("%d,%d\n",*p,*q);
}

程序运行后的输出结果是
A) 3,5,3,5
B) 3,5,5,3
C) 5,3,3,5
D) 5,3,5,3
展开
 我来答
超级答题王ok
推荐于2018-05-10 · 超过10用户采纳过TA的回答
知道答主
回答量:22
采纳率:0%
帮助的人:10.5万
展开全部
B 因为第一次交换,只改变了a和b的值,因为指针指向x和y,所以没有改变它的值,第二次直接拿x和y交换,实际上x和y就被交换了,所以值是3.5.5.3
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式