请教C问题

[复制链接]
查看11 | 回复4 | 2008-2-11 18:56:23 | 显示全部楼层 |阅读模式
理解有问题吧,这个函数功能是返回两个数中较大的一个x,y是参数(两个要比较的数),z是函数中的临时变量,用来存x和y中较大的数值以便返回
回复

使用道具 举报

千问 | 2008-2-11 18:56:23 | 显示全部楼层
首先假设我们是max函数int max (int x,int y)这个函数头是我们的名字我们的名字说明了,我们完成工作需要x,y两个变量,需要外界告诉我们,然后我们要告诉外界我们的结果(返回int),所以我们在我们自己的内部已经知道了必然会用到x,y所以是不用定义的,而z并不是外界给我们的,而是我们自己要借来用的,所以要定义,最后我们把z的值返回,外界只知道传入了两个数,然后我们给他一个结果,而并不需要知道我们使用了z,所以z只是我们自己用的.希望这样的解释可以帮助到你,希望你能多看点教材~
回复

使用道具 举报

千问 | 2008-2-11 18:56:23 | 显示全部楼层
x和y是传进去的参数,z是一个函数体内定义的变量,还有这个函数的作用好像是求两个数的最大值。
回复

使用道具 举报

千问 | 2008-2-11 18:56:23 | 显示全部楼层
z(x>y)?x:y; 应该是这样的吧z=(x>y)?x:y;
回复

使用道具 举报

千问 | 2008-2-11 18:56:23 | 显示全部楼层
这是个函数调用的问题啊,及Z只有在这段函数中有作用,到其它函数段中就成非法数据了。在其它函数中调用些函数时,要将参数传递给x和y,以便在max()中比较,如果在max()内定义,就无法传递参数到max()函数如果z在参数表中定义,那么在传递参数时要传递三个值,这样就会“多此一举”。建议看看C语言函数方面的教材。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行