| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1097 人关注过本帖
标题:输出三个数中最大的一个(我想问一下这个代码为什么不行?)
只看楼主 加入收藏
望卿安好
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2020-3-7
结帖率:40%
收藏
已结贴  问题点数:10 回复次数:2 
输出三个数中最大的一个(我想问一下这个代码为什么不行?)
#include<stdio.h>
int max(int x,int y,int z)
{
    int m;int e;
    if (x+y+z<3*x) m=x;
    else e=y+z;
    if (e<2*y) m=y;
    else m=z;
    return m;
}
int main()
{
    int a,b,c,d;
    scanf("%d%d%d",&a,&b,&c);
    d=max(a,b,c);
    printf("%d\n",d);
    return 0;
 }
我的这个代码在DEVC++里能用,但在OJ系统里提示答案错误33%,题目要求输入一行数组,我想知道这个代码有没有错误(假如不针对题目)
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2020-3-8 21:41编辑过]

搜索更多相关主题的帖子: 输出 代码 int 个数 最大的 
2020-03-08 21:32
forever74
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:CC
等 级:版主
威 望:58
帖 子:1696
专家分:4295
注 册:2007-12-27
收藏
得分:10 
100 102 2

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2020-03-08 22:00
望卿安好
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2020-3-7
收藏
得分:0 
回复 2楼 forever74
嗯,我明白了,我的这个代码是错的,输入三个数x,y,z,对于其中大于平均数的一个或两个,当我用x+y+z去判断时都会判断为最大值。比如你举的这个例子,100,102,2,平均数为68,当我用这三个数的和204去判断时,100也会被判定为最大值,因为204<3*100,而100并不是最大值。多谢提醒
2020-03-09 10:03
快速回复:输出三个数中最大的一个(我想问一下这个代码为什么不行?)
数据加载中...
 
   



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

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