| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2329 人关注过本帖
标题:[求助]return语句问题
只看楼主 加入收藏
vben
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-7-17
收藏
得分:0 
还是不明白 z 的值为什么会跑到 c那里去

2007-07-21 19:46
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
收藏
得分:0 
以下是引用vben在2007-7-21 19:46:19的发言:
还是不明白 z 的值为什么会跑到 c那里去



return语句是用来干什么的?

c=max(a,b) 赋值语句是用来干什么的?

弱弱问:你脑子是用来干什么的


自我放逐。。。
2007-07-21 19:51
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 

你没看过书?


羊肉串 葡萄干 哈密瓜!!
2007-07-21 20:03
vben
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-7-17
收藏
得分:0 
我看过,但还不理解。。。
可以说一下思路吗?


2007-07-21 20:07
vben
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-7-17
收藏
得分:0 
c=max(a,b)只是和
int max(int x,int y)
有关系啊
x=a y=b
判断谁是最大值
到 这里就不明白了

2007-07-21 20:09
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
以下是引用vben在2007-7-21 20:09:53的发言:
c=max(a,b)只是和
int max(int x,int y)
有关系啊
x=a y=b
判断谁是最大值
到 这里就不明白了

你想想数学里的函数

y=ax+b+……

你给一个x 就有一个y 这里其实一样 只是参数多了

新手嘛 理解不了很正常的 谁都有不懂的时候 (其实我也不是很懂)

btw 返回值一般放在EAX里

2007-07-21 20:18
爱c1314
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-7-16
收藏
得分:0 

呵呵,你还不死心啊?


hi,world
2007-07-21 21:11
水漪儿
Rank: 2
来 自:shangshida
等 级:论坛游民
帖 子:147
专家分:10
注 册:2007-7-19
收藏
得分:0 
以下是引用vben在2007-7-21 17:47:15的发言:
主函数中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)吗?


每一个C程序都是由main函数开始,到main函数结束的,这与main函数的位子无关。

2007-07-21 21:37
dandangui
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-7-22
收藏
得分:0 

#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的``,你可以把他放到函数里,,,
程序改为
main()
{
int a,b,c;
scanf("%d%d",&a,&b);
c=max(a,b); //函数调用
printf("%d",c);
}

max(int x,int y) //返回值是int型,前面的int可以不写,形参可以随意写,只要是合法的标识符
{
if(x>y)
return x;
else
rerutn y;
}

[此贴子已经被作者于2007-7-22 9:45:59编辑过]

2007-07-22 09:45
vben
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-7-17
收藏
得分:0 
谢谢dandangui指教

2007-07-22 20:41
快速回复:[求助]return语句问题
数据加载中...
 
   



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

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