| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 403 人关注过本帖
标题:为什么总是报“缺少return”错误?
只看楼主 加入收藏
无心剑
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-8-4
收藏
 问题点数:0 回复次数:2 
为什么总是报“缺少return”错误?

//----------三角形边长的判断---------------------
class SanJiao
{

//求最大值

static Double Max(Double a,Double b,Double c){
if (a>=b)
{
if (a>=c)
{
return a;
}
else if (a<c)
{
return c;
}
}
else{
if (b>=c)
{
return b;
}
else if (b<c)
{
return c;
}
}
}

//求最小值
static Double Min(Double a,Double b,Double c){
if (a<=b)
{
if (a<=c)
{
return a;
}
else if (a>c)
{
return c;
}
}
else{
if (b<=c)
{
return b;
}
else if (b>c)
{
return c;
}
}
}

public static void main(String[] args)
{
Double a=Double.parseDouble(args[0]);
Double b=Double.parseDouble(args[1]);
Double c=Double.parseDouble(args[2]);
if ((a>0)&&(b>0)&&(c>0))
{

Double max=Max(a,b,c);
Double min=Min(a,b,c);
Double mid=a+b+c-max-min;
if (((min+mid)>max)&&((max-mid)<min))
{
System.out.println("这三条线段可以组成一个三角形!");
}
else{
System.out.println("这三条线段不能组成一个三角形");
}
}
else{
System.out.println("三角形的边长不能为零或负值!");
}
}
}
这是我编的一个判断三个数是否可以组成一个三角形的程序,但是调试时总是报“缺少返回语句”错误,请各位帮忙查一下!

搜索更多相关主题的帖子: 缺少return 
2006-11-04 16:21
weiweiqiao
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2005-7-29
收藏
得分:0 
你的判断语句写的有问题。。。以求最小值为例:
if (a<=b)
{
if (a<=c)
{
return a;
}
else if (a>c)
{
return c;
}
}
斜体部分你不应当在出现if语句。如果此时(a < c)则不会return c(虽然从流程中看不会出现此类问题,上面的if(a <= c) 已经保证了a小于等于c,但是逻辑上不完备。故报错),应该为:
if (a<=b)
{
if (a<=c)
{
return a;
}
else {
return c;
}
}
else{
if (b<=c)
{
return b;
}
else {
return c;
}
}
你在传参数是Double,方法中应当使用Double.doubleValue()比较吧?


maCr.Qw
2006-11-04 17:06
无心剑
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-8-4
收藏
得分:0 
明白了,谢谢!!
2006-11-04 17:29
快速回复:为什么总是报“缺少return”错误?
数据加载中...
 
   



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

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