| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4192 人关注过本帖
标题:三个数如何比较大小,我的代码哪里出错了?
只看楼主 加入收藏
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:2 
你的子函数int max(int x,int y,int z);多了个“;”。
2016-05-22 22:34
我爱野孩子
Rank: 1
等 级:新手上路
帖 子:8
专家分:2
注 册:2016-4-24
收藏
得分:2 
#include<stdio.h>

int main()
{
    int max(int x,int y,int z);
    int a,b,c,m;
    scanf("%d%d%d",&a,&b,&c);
    m=max(a,b,c);
    printf("max=%d\n",m);
    return 0;
}

int max(int x,int y,int z)
{
    int m;
    if(x>y&&y>z)m=x;
    if(x>z&&z>y)m=x;
    if(y>x&&x>z)m=y;
    if(y>z&&z>x)m=y;
    if(z>x&&x>y)m=z;
    if(z>y&&y>x)m=z;
    return (m);
}
去掉函数第一行的分号就可以了
2016-05-22 23:21
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:2 
回复 楼主 君子甲
自定函数多个分号,不过自定义的max函数的算法可以优化很多的
2016-05-23 08:45
墨莫莫
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:29
专家分:102
注 册:2016-4-18
收藏
得分:2 
主函数放在第一位时,应该先声明其他附属函数,或者将主函数放在最后!
2016-05-23 09:17
KZ2209998126
Rank: 2
来 自:重庆第二师范学院
等 级:论坛游民
帖 子:6
专家分:12
注 册:2015-10-28
收藏
得分:2 
C语言中x>y>z这种写法是错的
2016-05-23 17:05
KZ2209998126
Rank: 2
来 自:重庆第二师范学院
等 级:论坛游民
帖 子:6
专家分:12
注 册:2015-10-28
收藏
得分:0 
其实用一个for循环或者while循环就ok了,不用这么麻烦
2016-05-23 17:07
亲琪琪
Rank: 2
等 级:论坛游民
帖 子:55
专家分:38
注 册:2016-3-12
收藏
得分:2 
#include<stdio.h>
//主函数
int main()
{
    int max(int x,int y,int z);
    int a,b,c,m;
    scanf("%d,%d,%d",&a,&b,&c);
    m=max(a,b,c);
    printf("max=%d\n",m);
    return 0;
}
//求三个整数中较大者的max函数
int max(int x,int y,int z)
{
    int m;
    if(x>y&&y>z)m=x;
    if(x>z&&z>y)m=x;
    if(y>x&&x>z)m=y;
    if(y>z&&z>x)m=y;
    if(z>x&&x>y)m=z;
    if(z>y&&y>x)m=z;
    return (m);
}
2016-05-24 23:04
Hugo_D
Rank: 1
等 级:新手上路
帖 子:11
专家分:5
注 册:2016-5-24
收藏
得分:2 
编译提示的问题在这里:
int max(int x,int y,int z);
{
    int m;
    if(x>y>z)m=x;
    if(x>z>y)m=x;
    if(y>x>z)m=y;
    if(y>z>x)m=y;
    if(z>x>y)m=z;
    if(z>y>x)m=z;
    return (m);
}
子函数后面你加了“;”,不用加的
2016-05-25 08:57
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
收藏
得分:2 

仰望星空...........不忘初心!
2016-05-25 09:21
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:贵宾
威 望:10
帖 子:1101
专家分:5265
注 册:2015-10-27
收藏
得分:2 
以下是引用君子甲在2016-5-22 15:34:20的发言:

谢谢回答,我试试,可是报错内容是
d:\v\君子甲.c\1.cpp(14) : error C2447: missing function header (old-style formal list?)
执行 cl.exe 时出错.,好像是另一个问题。
乱翻:“失去函数头(旧格式通用列表?)”
这个原因是你把函数写到main的后面去,同时在main函数前面没有声明函数。。导致程序执行时碰到max()这个东西的时候不知道它是什么。。。然后他猜测这是不是旧版本的C库里面的东西。所以是个error。
解决办法就是要么把int max(...){...}整个移到main函数的上面,#include...的下面,要么在main函数上面,include下面添加一个函数声明“int main(int,int,int);”(注意要加分号哦)

φ(゜▽゜*)♪
2016-05-25 10:58
快速回复:三个数如何比较大小,我的代码哪里出错了?
数据加载中...
 
   



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

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