关于C的调用函数问题,我是菜鸟问点白痴问题,有代码:)~

来源:百度知道 编辑:UC知道 时间:2024/05/08 23:46:35
# include <stdio.h>
void main()
{
int max(int x,int y);
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("Max is %d",c);
}
int max(int x,int y)
{
int z;
z=x>y?x:y;
return(z);
}

这是一个判断哪个数字比较大的程序,我是个初学者有许多地方不明白,自定义的函数max后面的形参为什么只有x和y呢?z呢?难道说是要跟实参对应?实参只有a、b,所以形参只有x、y?是这样的吗?a把值赋给x,b把值赋给y,我是这样理解的。是这样的吗?

但如果把main函数里面的c=max(a,b);改成c=max(3,a);那么自定义函数该怎么变呢?

改成c=max(3,a+b);那么自定义函数该怎么变呢?
---------------------------
我是一个菜鸟才刚刚开始学习,还希望大家不吝赐教~小弟感谢不已!!

这是一个判断哪个数字比较大的程序,我是个初学者有许多地方不明白,自定义的函数max后面的形参为什么只有x和y呢?z呢?难道说是要跟实参对应?实参只有a、b,所以形参只有x、y?是这样的吗?a把值赋给x,b把值赋给y,我是这样理解的。是这样的吗?

差不多,不过有一点说反了,是因为形参只有x,y,所以实参是a,b

/****************/

但如果把main函数里面的c=max(a,b);改成c=max(3,a);那么自定义函数该怎么变呢?

不用改
/****************/
改成c=max(3,a+b);那么自定义函数该怎么变呢?

依旧不用改

你理解很正确啊
函数都不用变吧

z时返回值,不参数,
a,b是与x,y对应,