标题:[求助]以下程序的输出结果是a=___,b=___,c=___。
取消只看楼主
lijoel73209
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-3-23
 问题点数:0 回复次数:3 
[求助]以下程序的输出结果是a=___,b=___,c=___。

以下程序的输出结果是a=___,b=___,c=___。

我算的答案是29 13 5
可标准答案是36 16 19
不知道那点出错了?谢谢各位帮忙!

#include <stdio.h>
int func(int a,int *p);

void main()
{
int a=1,b=2,c;

c=func(a,&b);
b=func(c,&a);
a=func(b,&c);

printf("a=%d,b=%d,c=%d",a,b,c);
}

int func(int a,int *p)
{
a++;
*p=a+2;
return(*p+a);
}

搜索更多相关主题的帖子: int 标准答案 func 结果 
2006-03-23 10:57
lijoel73209
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-3-23
得分:0 
请问“首先执行完c=func(a,&b);a=1,b=4,c=6,”
b=4是怎么得来的?
2006-03-23 13:07
lijoel73209
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-3-23
得分:0 
请问“首先执行完c=func(a,&b);a=1,b=4,c=6,”
b=4是怎么得来的?
2006-03-23 14:41
lijoel73209
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-3-23
得分:0 
然后执行b=func(c,&a); a=9,c=6,b=16,
这一步的a=9,c=6,b=16是怎么得来的?
我怎么是c=6,a=4(因为a=*p=2+2),b=8 ?
2006-03-23 16:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-52202-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.430646 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved