如何用Java找出一个整数数组中最大的值,并返回最大值的数组下标,尤其是有两个或是三个最大值时?

如题所述

用System.out.println(j);   //输出最大值下标即可。

一、源程序为:public class Test2 {public static void main(String[] args) {int [] arr={23,12,32,13,31,56,43}sort(arr);System.out.format("%d",+arr[6]);// TODO Auto-generated method stub}public static void  sort(int  azz[]){int t;for(int i=0;i<azz.length-1;i++){ if(azz[i]>azz[i+1]){ t=azz[i];azz[i]=azz[i+1]azz[i+1]=t;}}}}。

二、此程序使用了数组:有关数组:声明格式 :    数据类型  数组名[ ];  或    数据类型   [  ]   数组名;同时声明与创建数组的格式为:数据类型 数组名[ ]=new 数据类型 [ size ]其中,new用来给数组分配内存,size用来定义数组的长度。

三、函数调用:sort(arr);形式:public class Test {public static void main(String[] args) {sort(arr);}public static void  sort(int  azz[]){}}。

四、冒泡排序第一次,找出最大的值。比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-04-05

    private int [] x={11,2,6,9,12,7,12,1,3,12,8};
    private int max=x[0];

    for(int i=1;i<x.length;i++){

    if(max<x[i]){
    max=x[i]; //获得最大值} 

    for(int j=0;j<x.length;j++){
    if(x[j]==max){ //遍历对比

    System.out.println(j); //输出最大值下标

    public static void main(String[] args) {

    Scanner input=new Scanner(System.in);

    System.out.print("请输入第一行(4个数):");

    String line1=input.next();

    System.out.print("请输入第二行(4个数):");

    String line2=input.next();

    System.out.print("请输入第三行(4个数):");

    String line3=input.next();

    String[] inStrs=new String[3];

相似回答