标题:初学者求助:求2个数中较大者(调用MAX函数)
只看楼主
行昀流水
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-7-25
结帖率:100%
已结贴  问题点数:20 回复次数:16 
初学者求助:求2个数中较大者(调用MAX函数)
#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=%d\n",c);
}

int max(int x,int y)
{
 int z;
 if(x>y) z=x;
 else z=y;
 return (z);
}
我运行之后,不管输入的第一个数大还是第二个数大,都显示的的第一个数?为什么?
搜索更多相关主题的帖子: MAX 函数 
2009-07-25 01:00
prankmoon
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:161
专家分:921
注 册:2009-7-21
得分:20 
因为你输入参数的时候没有用逗号分隔,而你的 scanf 函数要求用逗号分隔的,否则函数只接收到第一个参数,第二个参数并没有被接收。你如果输入 3,4 就会得到正确答案的。

BTW: 你用什么调试器?你没有逐步跟踪?

[[it] 本帖最后由 prankmoon 于 2009-7-25 01:17 编辑 [/it]]
2009-07-25 01:13
行昀流水
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-7-25
得分:0 
回复 2楼 prankmoon
非常感谢,明白了~
呃。。。不好意思,我是菜鸟,调试器是干嘛用的?是指编译器吗?
2009-07-25 01:39
a12ss
Rank: 2
等 级:论坛游民
帖 子:29
专家分:10
注 册:2009-6-15
得分:0 
你看的谭浩强C程序设计(三版)
上的第五页列子???
2009-07-25 02:59
行昀流水
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-7-25
得分:0 
回复 4楼
嗯~~

[[it] 本帖最后由 行昀流水 于 2009-7-25 21:02 编辑 [/it]]
2009-07-25 21:00
a12ss
Rank: 2
等 级:论坛游民
帖 子:29
专家分:10
注 册:2009-6-15
得分:0 
加QQ··一起学习··短信给我你的QQ!
2009-07-25 21:20
行昀流水
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-7-25
得分:0 
再次感谢二楼哈~
2009-07-26 01:20
ghostinactio
Rank: 2
等 级:论坛游民
帖 子:5
专家分:20
注 册:2009-7-27
得分:0 
main用法
void main()是国内教材的经典误区
main默认值是0  应该用int main()
2009-07-27 03:02
zfc
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-7-27
得分:0 
用逗号把输入的参数隔开就行了
2009-07-27 08:49
shenyun345
Rank: 2
等 级:论坛游民
帖 子:32
专家分:10
注 册:2009-7-13
得分:0 
把scanf("%d,%d",&a,&b);
中的 ("%d,%d)   逗号去掉
2009-07-27 15:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-280456-1-1.html




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

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