标题:小白请教各位高手,以下程序编译正常,连接出错,问题在哪?
只看楼主
zhansm
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2017-10-10
结帖率:0
已结贴  问题点数:20 回复次数:16 
小白请教各位高手,以下程序编译正常,连接出错,问题在哪?
#include <stdio.h>
void 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("max=%d\n",d);
}

int max(int x,int y,int z)
{
    int e;
    if (x>y)
    {   if (y>z)
           e=x;
       else //(y<z)
       {   if (x>z) e=x;
            else e=z;
       }
    }
    else //(x<y)
    {   
        if (x>z)
            e=y;
         else //(x<z)
         {     if (y>z)
                e=y;
            else e=z;
         }
    return(e);
    }
}
搜索更多相关主题的帖子: 编译 连接 int max if 
2017-10-10 14:32
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:7 
错误信息呢 咋不贴出来呢

DO IT YOURSELF !
2017-10-10 14:43
zhansm
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2017-10-10
得分:0 
输出最值.obj : error LNK2005: _main already defined in 比大小.obj
Debug/大小.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.
2017-10-10 14:45
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
不知道你用的啥编译器

尝试做以下更改

1、将函数声明放在main之前
2、更换max函数名称

DO IT YOURSELF !
2017-10-10 14:50
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:7 
int max(int x,int y,int z)
{
    int e;
    if (x>y)
    {   if (y>z)
           e=x;
       else //(y<z)
       {   if (x>z) e=x;
            else e=z;
       }
    }
    else //(x<y)
    {   
        if (x>z)
            e=y;
         else //(x<z)
         {     if (y>z)
                e=y;
            else e=z;
         }
    //return(e);
    }
    return(e);
}

或者:
int max(int x,int y,int z)
{
    if (x>y && x>z) return x;
    else if (y>x && y>z) return y;
    else if (z>x && z>y) return z;
}
2017-10-10 14:54
zhansm
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2017-10-10
得分:0 
vc6.0  还是不行哦
2017-10-10 14:56
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
传统的观点都是抛弃vc6.0

DO IT YOURSELF !
2017-10-10 15:03
zhansm
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2017-10-10
得分:0 
哦,谢谢
2017-10-10 15:07
pydlq
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:129
专家分:488
注 册:2017-9-5
得分:7 
scanf里面的逗号去掉。然后你的判断方式太麻烦了
int max(int x,int y,int z)
{
    int e;
    if(x>=y)
        e=x;
    else
        e=y;
     if(e<z)
         e=z;
    return(e);
}
2017-10-10 15:07
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
抛出其他的问题 来看

单独就1楼的代码来看  弄成exe一点问题都没有(vs2010+win7)  至于能否实现目标那是下一步的事情

DO IT YOURSELF !
2017-10-10 15:11



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




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

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