| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4744 人关注过本帖
标题:一个关于函数调用和求m和n最大公约数的问题
只看楼主 加入收藏
天剑杀手
Rank: 2
等 级:论坛游民
帖 子:18
专家分:20
注 册:2012-10-11
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
一个关于函数调用和求m和n最大公约数的问题
程序代码:
#include <stdio.h>
#include <stdlib.h>

int main()
{
int max(int x,int y);
int a,m,n;
scanf("%d%d",&m,&n);
max(m,n);
a=m%n;
while(a>1)
{
m=n;
n=a;
a=m%n;
}
if(a==0)
printf ("m和n的最大公约数是%d\n",n);
if(a==1)
printf ("m和n的最大公约数是%d\n",a);
}

 int max(int x,int y)
{
int z;
if(x<y)
{
z=x;
x=y;
y=z;
}
return(x,y);
}

大神:
求教这个函数调用返回多值应该怎样改,我怎么改都不对。谢谢



[ 本帖最后由 天剑杀手 于 2012-10-12 19:59 编辑 ]
搜索更多相关主题的帖子: 公约数 max 
2012-10-12 17:37
obstratiker
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:198
专家分:758
注 册:2011-5-5
收藏
得分:3 
貌似没有一次性返回多值的,max函数改用指针吧
2012-10-12 22:45
张朝成
Rank: 4
等 级:业余侠客
帖 子:149
专家分:265
注 册:2012-3-22
收藏
得分:3 
路过
2012-10-12 22:47
xiaole1964
Rank: 1
等 级:新手上路
帖 子:1
专家分:3
注 册:2012-10-12
收藏
得分:3 
这个问题可以使用递归函数。。。
2012-10-12 22:57
菜鸟一支
Rank: 6Rank: 6
来 自:何美杭
等 级:侠之大者
威 望:1
帖 子:121
专家分:456
注 册:2012-10-10
收藏
得分:3 
楼主可以将
return(x,y);改为
return 0;

小弟何美杭,所发表的都仅代表个人观点,欢迎批评指正。
2012-10-12 22:58
菜鸟一支
Rank: 6Rank: 6
来 自:何美杭
等 级:侠之大者
威 望:1
帖 子:121
专家分:456
注 册:2012-10-10
收藏
得分:0 
而且楼主既然用
int main()
那么就应该设置主函数的返回值;否则系统会发出警告。
建议给主函数设置返回值,或者改成
void main()

小弟何美杭,所发表的都仅代表个人观点,欢迎批评指正。
2012-10-12 23:00
行僧
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2012-10-10
收藏
得分:3 
应该是max函数错了,max(int x ,int y)只是传送了x,y的值但不对x,y交换,应该用指针运算
列如void max(int *x ,int *y)
 {
 int z;
 if(*x < *y)
 {
 z=*x;
 *x=*y;
 *y=z;
 }
 return 0;
 };
因为他是对地址运算直接改变地址所存值,所以不用返回值
2012-10-13 00:08
Y影子Z
Rank: 3Rank: 3
来 自:石家庄
等 级:论坛游侠
帖 子:54
专家分:110
注 册:2012-10-12
收藏
得分:3 
楼主的max()函数貌似没有什么用啊,去掉也可以得出正确结果

有光明必然会有黑暗,而影子,就是光明与黑暗的缝隙
2012-10-13 09:08
天剑杀手
Rank: 2
等 级:论坛游民
帖 子:18
专家分:20
注 册:2012-10-11
收藏
得分:0 
max函数是为了保证a的值>0
2012-10-13 19:06
天剑杀手
Rank: 2
等 级:论坛游民
帖 子:18
专家分:20
注 册:2012-10-11
收藏
得分:0 
回复 7楼 行僧
谢谢
2012-10-13 19:08
快速回复:一个关于函数调用和求m和n最大公约数的问题
数据加载中...
 
   



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

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