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

package com.itheima;

import java.util.Scanner;

/**
*
* 第五题:编写程序接收键盘输入的5个数,装入一个数组,并找出其最大数和最小数。
*
* @author Administrator
*
*/

public class Test5 {
        public static void main(String[] args)
    {
            int[] arr=new int[5];//创建一个元素个数为5的整形数组
            Scanner in=new Scanner(System.in);//输入流
            for(int i=0;i<arr.length;i++)//输入数组元素
            {
//                            System.out.println("输入第"+(i+1 )+"个数:");
                    arr[i]=in.nextInt();
            }
   
            int max=Max(arr);//调用求最大值的函数
            int min=Min(arr);//调用求最小值的函数
            System.out.println("最大值="+max+", 最小值="+min);
            
    }
    static int Min(int[] arr)//求最小值的函数
    {
            int min=0;
            int small=arr[min];            
            for(int i=0;i<arr.length;i++)  
            {
                    if(arr[i]<small)              
                    {
                            min=i;               
                            small= arr[min];
                    }
            }
            return small;//返回最小值
    }
    static int Max(int[] arr)//求最大的得函数
    {
            int max=0;
            int big=arr[max];               
            for(int j=0;j<arr.length;j++)
            {
                       if(arr[j]>arr[max])                  
                    {
                            max=j;                  
                            max= arr[max];
                    }
            }
            return big;//返回最大值
    }

}

5 个回复

倒序浏览
:L顶楼上的,max= arr[max];错了,应该是big=arr[max]
而且你这代码min和max函数定义得有两点问题:
1  方法名首字母要小写
2 你定义的big 和max 两者有一个是多余的,我修改一下max方法,仅供参考,修改代码如下:
  1. static int max(int[] arr)//求最大的得函数
  2.             {
  3.                     int max=arr[0];
  4.                                   
  5.                     for(int j=1;j<arr.length;j++)
  6.                     {
  7.                                if(arr[j]>max)                  
  8.                             {
  9.                                     max=arr[j];                  
  10.                                   
  11.                             }
  12.                     }
  13.                     return max;//返回最大值
复制代码

回复 使用道具 举报
在arr[j]>arr[max];这错了,应该是arr[j]>arr[big];
回复 使用道具 举报
哦,    我昨天也昨天有点困,,   谢谢了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马