A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. public class ArryMax {
  2.         public static void main(String[] args)
  3.         {
  4.                 int a[]={1,2,4,342,56,67,78,45};
  5.                 System.out.println(getMax(a));
  6.                 System.out.println(getMin(a));
  7.                 getSum(a);
  8.         }
  9.         public static int getMax(int a[])
  10.         {
  11.                 int Max=a[0];
  12.                 for(int i=1;i<a.length;i++)
  13.                 {
  14.                         if(Max<a[i])
  15.                         {
  16.                                 int temp=Max;
  17.                                         Max=a[i];
  18.                                         a[i]=temp;
  19.                         }
  20.                                
  21.                 }
  22.                 return Max;
  23.         }
  24.         public static int getMin(int a[])
  25.         {
  26.                 int Min=a[0];
  27.                 for(int i=1;i<a.length;i++)
  28.                 {
  29.                         if(Min>a[i])
  30.                         {
  31.                                 int temp=Min;
  32.                                         Min=a[i];
  33.                                         a[i]=temp;
  34.                         }
  35.                                
  36.                 }
  37.                 return Min;
  38.         }
  39.         public static void getSum(int a[])
  40.         {
  41.                 int sum=0;
  42.                 for(int i=0;i<a.length;i++)
  43.                 {
  44.                         sum+=a[i];
  45.                 System.out.print(a[i]+",");
  46.                 }
  47.                 System.out.println();
  48.                 System.out.println(sum);
  49.                
  50.         }


  51. }
复制代码
输出的结果是:
342
1
1,1,2,4,56,67,78,45,  我想问下,这一行的头部怎么会插入一个 1 呢?而且我上面只是做了交换数据操作,怎么会少了一个数字呢!
254  求和运算的结果是错误的

5 个回复

倒序浏览
public class ArryMax {
        public static void main(String[] args)
        {
                int a[]={1,2,4,342,56,67,78,45};
                System.out.println(getMax(a));
                System.out.println(getMin(a));
                getSum(a);
        }
        public static int getMax(int a[])
        {
                int Max=a[0];
                for(int i=1;i<a.length;i++)
                {
                        if(Max<a[i])
                        {
                               Max=a[i];
                        }
                                
                }
                return Max;
        }
        public static int getMin(int a[])
        {
                int Min=a[0];
                for(int i=1;i<a.length;i++)
                {
                        if(Min>a[i])
                        {
                                      Min=a[i];
                                                             }
                                
                }
                return Min;
        }
        public static void getSum(int a[])
        {
                int sum=0;
                for(int i=0;i<a.length-1;i++)
                {
                        sum+=a[i];
                System.out.print(a[i]+",");
                }
                System.out.println();
                System.out.println(sum);
               
        }


}
回复 使用道具 举报
class ArryMax {
    public static void main(String[] args)
    {
            int a[]={1,2,4,342,56,67,78,45};
            System.out.println(getMax(a));
            System.out.println(getMin(a));
            getSum(a);
    }
    public static int getMax(int a[])
    {
            int Max=a[0];
            for(int i=1;i<a.length;i++)
            {
                    if(Max<a[i])
                    {
                            int temp=a[i];
                                   Max=temp;
                    }
                           
            }
            return Max;
    }
    public static int getMin(int a[])
    {
            int Min=a[0];
            for(int i=1;i<a.length;i++)
            {
                    if(Min>a[i])
                    {
                            int temp=a[i];
                                    
                                    Min=temp;
                                
                    }
                           
            }
            return Min;
    }
    public static void getSum(int a[])
    {
            int sum=0;
            for(int i=0;i<a.length;i++)
            {
                    sum+=a[i];
            System.out.print(a[i]+",");
            }
            System.out.println();
            System.out.println(sum);
            
    }


}
回复 使用道具 举报
这就对啦。
回复 使用道具 举报
本帖最后由 Destiny 于 2012-3-15 10:05 编辑

你在求最大值最小值的时候为什么要交换元素呢???直接把那个值赋给MAX或者MIN就好了啊 ~ {:soso_e113:}
  1. public class ArrayMax {
  2.         public static void main(String[] args)
  3.         {
  4.                 int a[]={1,2,4,342,56,67,78,45};
  5.                 System.out.println("最大数是:"+getMax(a));
  6.                 System.out.println("最小数是:"+getMin(a));
  7.                 System.out.println("总和是:"+getSum(a));
  8.         }
  9.         public static int getMax(int a[])
  10.         {
  11.                 int Max=a[0];
  12.                 for(int i=1;i<a.length;i++)
  13.                 {
  14.                         if(Max<a[i])
  15.                         {
  16.                                // int temp=Max;这句删除
  17.                                 Max=a[i];
  18.                                // a[i]=temp;这句删除
  19.                         }
  20.                                 
  21.                 }
  22.                 return Max;
  23.         }
  24.         public static int getMin(int a[])
  25.         {
  26.                 int Min=a[0];
  27.                 for(int i=1;i<a.length;i++)
  28.                 {
  29.                         if(Min>a[i])
  30.                         {
  31.                                 //int temp=Min;这句删除
  32.                                 Min=a[i];
  33.                                // a[i]=temp;这句删除
  34.                         }
  35.                                 
  36.                 }
  37.                 return Min;
  38.         }
  39.         public static int getSum(int a[])
  40.         {
  41.                 int sum=0;
  42.                 for(int i=0;i<a.length;i++)
  43.                 {
  44.                         sum+=a[i];
  45.                 System.out.print(a[i]+",");
  46.                 }
  47.                System.out.println();
  48.                return(sum);
  49.                
  50.         }


  51. }
复制代码
回复 使用道具 举报
class ArryMax {
    public static void main(String[] args)
    {
            int a[]={1,2,4,342,56,67,78,45};
            System.out.println(getMax(a));
            System.out.println(getMin(a));
            getSum(a);
    }
    public static int getMax(int a[])
    {
            int Max=a[0];
            for(int i=1;i<a.length;i++)
            {
                    if(Max<a[i])
                    {
                            int temp=a[i];
                                   Max=temp;
                    }
                           
            }
            return Max;
    }
    public static int getMin(int a[])
    {
            int Min=a[0];
            for(int i=1;i<a.length;i++)
            {
                    if(Min>a[i])
                    {
                            int temp=a[i];
                                    
                                    Min=temp;
                                
                    }
                           
            }
            return Min;
    }
    public static void getSum(int a[])
    {
            int sum=0;
            for(int i=0;i<a.length;i++)
            {
                    sum+=a[i];
            System.out.print(a[i]+",");
            }
            System.out.println();
            System.out.println(sum);
            
    }


}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马