当前位置: 代码迷 >> C语言 >> [求助]return语句问题
  详细解决方案

[求助]return语句问题

热度:380   发布时间:2007-07-21 14:13:27.0
[求助]return语句问题
这是源代码:

#include <stdio.h>
int max(int x,int y) //这里定义了一个函数,最前面的int 表示本函数的返回值是整型,max是这个函数的名字,后面我们可以通过名字来调用。
//圆括号中有int x,int y ,这是这个函数的参数。书上把它叫形参。不过,我当时在理解这个形参时费了很大劲。我用另一个说法来解释。
//那就是:你可以把它们看成两个变量,用来接受主函数传递过来的参数。
{
int z;
if(x>y) //如果x大于y
z=x; //把x的值交给z
else
z=y; //否则把y的值交给z
return z; //返回z的值(也就是把这个结果返回给主函数,完成它的最后任务)
}

int main(void) //主函数,C中,不管有多少函数,程序总是从main()函数开始执行。
{
int a,b,c;
scanf("%d%d",&a,&b); //scanf表示从键盘上接收两个变量的值。 两个%d%d表示接收的两个数都是十进制数, &a,&b表示接收的值分别交给a和b.(注意,不要忘了取地址符&)
c=max(a,b); //调用前面定义的max函数,并给它传了两个参数,一个是a的值,另一个是b的值。 max完成任务后把结果返回并赋给c
printf("%d\n",c); //打印c的值
return 0 ;
}

搜索更多相关的解决方案: 语句  return  

----------------解决方案--------------------------------------------------------
这是我的问题:

int max(int x,int y) //这里定义了一个函数,最前面的int 表示本函数的返回值是整型,max是这个函数的名字,后面我们可以通过名字来调用。
//圆括号中有int x,int y ,这是这个函数的参数。书上把它叫形参。不过,我当时在理解这个形参时费了很大劲。我用另一个说法来解释。
//那就是:你可以把它们看成两个变量,用来接受主函数传递过来的参数。
{
int z;
if(x>y) //如果x大于y
z=x; //把x的值交给z
else
z=y; //否则把y的值交给z
return z; //返回z的值(也就是把这个结果返回给主函数,完成它的最后任务)
}

这里我不明白z

这里没有用scanf函数输入X,Y二值。。。如何判断大小呢?

还有return z

假设 X=5 Y=10

那里int z那里就变成 int z=10了吗?

还有:

int max(int x,int y)

max有什么用?

如果用printf输出结果 是输出什么?假设printf("A=%d",z)

是A=10 那么max去了那里呢?

既然结果值已经返回到 int z那里。。。那int max(int x,int y)还有什么用?

int max(int x,int y)不是要等待一个reture函数去返回吗?这里没有哦。。。那有什么用呢?

return 0 的问题?

一定要添加上吗?


----------------解决方案--------------------------------------------------------
主函数中c=max(a,b)就是调用前面的int max(int x,int y) 函数
把a,b传给x,y
----------------解决方案--------------------------------------------------------
楼主应该有教材的吧,看一下函数的调用相信就能解决你上面的所有问题
----------------解决方案--------------------------------------------------------
程序在运行时,先执行主函数的,定义的函数是在主函数的执行步骤里的
----------------解决方案--------------------------------------------------------
返回的那个值是交给调用它的函数的,
max只是一个名字,叫min也没关系,问题在于让人一看就明白这个函数的作用是求最大值而非求最小值的

小兄弟你多看点书再来问好不?
----------------解决方案--------------------------------------------------------
回复:(vben)[求助]return语句问题
主函数中c=max(a,b)就是调用前面的int max(int x,int y) 函数
把a,b传给x,y
哪句代码表示把 a,b传给x,y?
还有:
我知道。。简单来说是 int max
(int x,int y)是max的参数...

按5楼说的,这段代码是先执行main() 再执行int max(int x,int y)吗?

[此贴子已经被作者于2007-7-21 17:48:15编辑过]


----------------解决方案--------------------------------------------------------
return z
这个语句的返回值返回到哪里?
什么时候一定要用返回return 函数?
----------------解决方案--------------------------------------------------------
以下是引用vben在2007-7-21 17:50:07的发言:
return z
这个语句的返回值返回到哪里? //c=max(a,b) 返回z就赋值给了c
什么时候一定要用返回return 函数? //你函数定义成int doubel 等就要return


----------------解决方案--------------------------------------------------------

刚看了下程序注释 写的很明白了。。。。。
z返回给c


----------------解决方案--------------------------------------------------------
  相关解决方案