求大神帮忙
【求助帖】请及时确认最佳答案,下次提问时可以得到更多关注,问题可以更快解决
#include<stdio.h>
int c,a=4;
int func(int a,int b)
{
c=a*b;
a=b-1;
b++;
return(a+b+1);
}
void main()
{
int b=2,p=0;c=1;
p=func(b,a); 这句话什么意思,p怎么算的
printf("%d,%d,%d,%d\n",a,b,c,p);
}
func不是上面写了吗。func函数返回的是a+b+1,,而a是输入的b-1,b是原本的b加1,故最后返回的是2b+1。这里的b就是func的第二个参数 将 p 赋值为 func(b, a) 的返回值。 func就是你上面定义的函数。看看函数那一章 本帖最后由 lovely539351 于 2020-4-1 13:12 编辑
c = 1;
b = 2;
a = 4;
p = func(b, a);
int func(int a,int b) 这里a = 2, b = 4;
{
c=a*b; 在分支函数里计算不会影响主函数里的c,下面a和b同理不影响主函数里的值
a=b-1; a = 4 - 1;
b++; b = 4 + 1;
return(a+b+1); 返回值为9;所以p = 9;
}
最后a = 4, b = 2; c = 1; p = 9;
页:
[1]