c语言指针问题求详细过程

答案就是373但是具体变换过程不知道... 答案就是373但是具体变换过程不知道 展开
 我来答
匿名用户
2019-01-11
展开全部

贴上代码,图片中讲解了程序运行过程,希望能帮助你加深对指针的理解。
#include <stdio.h>
f(int *a, int *b, int *c) {
int *t;
t=a;
a=b;
b=t;
*t=*b;
*b=*c;
*c=*t;
}

main() {
int a=5,b=7,c=3;
int *p1=&a,*p2=&b,*p3=&c;
f(p1,p2,p3);
printf("%d,%d,%d",a,b,c);
}
Yuqi_Tan

2019-01-11 · TA获得超过8.9万个赞
知道大有可为答主
回答量:9918
采纳率:93%
帮助的人:3469万
展开全部
主函数中p1->a=5,p2->b=7,p3->c=3
调用f函数的参数的顺序是(p1,p2,p3)。
f函数中:a指向主函数中的a,b指向主函数中的b,c指向主函数中的c。
t=a,t指向主函数中的a;
a=b,a指向主函数中的b;
b=t,b指向主函数中的a;
*t=*b,由于t和b都指向主函数中的a,所以主函数中a的值=主函数中a的值=5;
*b=*c,主函数中a的值=主函数中c的值=3;
*c=*t,主函数中c的值=主函数中a的值=3
计算结果:
主函数中a的值=3
主函数中b的值没有变化,仍是7。
追答
主函数中c的值=3。
所以,返回主函数后打印abc的值分别是3 7 3
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
稳重还谦逊灬柠檬L
2019-01-11 · TA获得超过506个赞
知道小有建树答主
回答量:1048
采纳率:45%
帮助的人:295万
展开全部
中秋节在红楼梦里被写到多次,但贾府过中秋,却安排在其贾府覆灭之时,字里行间满是悲凉意味,其实曹公已经伏下八十回后大悲之事。...详情
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式