标题:为什么会是这样呢 求大家解答一下啊
只看楼主
超级网虫
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2013-5-23
结帖率:100%
已结贴  问题点数:10 回复次数:3 
为什么会是这样呢 求大家解答一下啊
#include <stdio.h>
int 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);
        return 0;
}
int max(int x,int y)
{
    int z;
    if(x>y)z=x;
    else z=y;
    return(z);
}
上面这段代码 是给出的输入两个数中的大数
下面这段代码是给出的输入3个数中的最大数
#include <stdio.h>
int main()
{
    int a,b,c,max;
    scanf("%d %d %d",&a,&b,&c);
    max=a;
    if(max<b)max=b;
    if(max<c)max=c;
    printf("%d\n",max);
    return 0;
}
开始的时候我没看到第二段代码 只是有这样一道题 我就按照第一段代码怎么写都错误 后来我看到了第二段代码 我综合两段代码写出了下面的一段代码 我认为达到的目的也应该是给出 输入的3个数中的最大数 但是结果却是不管输入什么样的三个数给出的都是4198410 我不明白是什么情况了 大神们快来指点下兄弟吧
#include <stdio.h>
int main()
{
    int max(int x,int y,int z);
    int a,b,c,d;
    scanf("%d %d %d",&a,&b,&c);
    d=max(a,b,c);
    printf("%d\n",max);
    return 0;
}
int max(int x,int y,int z)
{
    int f;
    f=x;
    if(f<y)f=y;
    if(f<z)f=z;
    return(f);
}
搜索更多相关主题的帖子: max include return 
2013-05-23 17:53
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
得分:10 
做题细心点...
 printf("%d\n",max);    是 d   不是max

三十年河东,三十年河西,莫欺少年穷!
2013-05-23 18:07
超级网虫
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2013-5-23
得分:0 
回复 2楼 韶志
哈哈 我检查多少遍了 就是找不出来怎么回事  志哥一语中的啊 小弟对您的敬仰犹如黄河之水滔滔不绝啊
2013-05-23 18:34
zhangshifeng
Rank: 2
等 级:论坛游民
帖 子:24
专家分:57
注 册:2013-5-19
得分:0 


c 语言学习交流群:280768274
2013-05-23 18:53



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




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

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