标题:谁能告诉我怎么回事~~~~(>_<)~~~~
只看楼主
kekin
Rank: 2
等 级:论坛游民
帖 子:59
专家分:85
注 册:2010-3-26
结帖率:83.33%
已结贴  问题点数:10 回复次数:7 
谁能告诉我怎么回事~~~~(>_<)~~~~
/**
 *求数组中的最大值、最小值、平均值与总和
 * 2010/9/13
 */


public class Array
{
    public static void main (String[] args)
    {
        int[]ary = new int[10];
        int max = ary[0];
        int min = ary[0];
        int sum = 0;
        int average;
   
        
        for (int i = 0; i<ary.length; i++)
        {
            ary[i]=Integer.parseInt(args[i]);
            sum = sum + ary[i];
            if(ary[i]>=max)
                max = ary[i];
            if(ary[i]<=min)    //这里有问题吗?
                min = ary[i];
        
        }
        
        average = sum/10;
        
        System.out.println ("最大值:"+max);
        System.out.println ("最小值:"+min);
        System.out.println ("平均值:"+average);
        System.out.println ("总  和:"+sum);
    }
}

怎么计算的最小值都是0呀,不管输入什么非0数。
搜索更多相关主题的帖子: max class average public 平均值 
2010-09-16 23:23
kekin
Rank: 2
等 级:论坛游民
帖 子:59
专家分:85
注 册:2010-3-26
得分:0 
可能最近头脑短路了   怎么就查不出哪里出问题了  请高手指点
2010-09-16 23:25
shellingford
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:19
帖 子:228
专家分:1348
注 册:2010-8-9
得分:6 
程序代码:
    public static void main(String[] args) {
        int[]ary = new int[10];
        int max = Integer.MIN_VALUE;
        int min = Integer.MAX_VALUE;
        int sum = 0;
        int average;
        
        for (int i = 0; i<ary.length; i++) 
        {
            ary[i]=Integer.parseInt(args[i]);
            sum = sum + ary[i];
            if(ary[i]>=max)
                max = ary[i];
            if(ary[i]<=min)    
                min = ary[i];
        
        }
        
        average = sum/10;
        
        System.out.println ("最大值:"+max);
        System.out.println ("最小值:"+min);
        System.out.println ("平均值:"+average);
        System.out.println ("总  和:"+sum);
    }


[ 本帖最后由 shellingford 于 2010-9-17 00:05 编辑 ]
2010-09-17 00:00
gameohyes
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:53
帖 子:1275
专家分:3629
注 册:2009-3-5
得分:4 
int[]ary = new int[10];
int数组中的元素默认为0;ary数组中的元素没有赋值

C#超级群 74862681,欢迎大家的到来!
2010-09-17 00:02
yuanxl33
Rank: 2
等 级:论坛游民
威 望:1
帖 子:60
专家分:64
注 册:2010-4-11
得分:0 
int min = ary[0];
min = 0  所以不管你怎么输入, ary[i] 都不会小于 min
2010-09-17 00:33
kekin
Rank: 2
等 级:论坛游民
帖 子:59
专家分:85
注 册:2010-3-26
得分:0 
回复 3楼 shellingford
        int max = Integer.MIN_VALUE;
        int min = Integer.MAX_VALUE;  //能告诉我这两行代码后面的Integer.MIN_VALUE的作用吗?
都还没有给数组赋值,难道这里可以获取后面数组的值吗?
2010-09-17 18:38
shellingford
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:19
帖 子:228
专家分:1348
注 册:2010-8-9
得分:0 
以下是引用kekin在2010-9-17 18:38:10的发言:

        int max = Integer.MIN_VALUE;
        int min = Integer.MAX_VALUE;  //能告诉我这两行代码后面的Integer.MIN_VALUE的作用吗?
都还没有给数组赋值,难道这里可以获取后面数组的值吗?


Integer.MIN_VALUE; 是int类型最小的值,这意味着你后面无论输入什么int类型的数据都是大于等于他
Integer.MAX_VALUE;正好相反,是int类型最大的值。
2010-09-17 19:23
kekin
Rank: 2
等 级:论坛游民
帖 子:59
专家分:85
注 册:2010-3-26
得分:0 
回复 7楼 shellingford
ok!谢啦
2010-09-17 19:29



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




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

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