问题是:
某百货商场当日消费积分最高的8名顾客,他们的积分分别是:18,25,7,36,13,2,89,63。从这组数中找出最少的积分数以及他在数组中的原始位子。
这个老师讲过,可是时间过的久了,忘了不少,是用数组做的,应约我记得是像打擂一样,先定一个num=0,然后一个数一个数的比较,比他大的就替换掉,可是具体怎么做忘记了貌似还比较容易,就是想不起来。麻烦前辈们教下,大后天就考试了,抓紧复习中……顺便问一下,什么是一维数组,什么是二维数组,2者有什么区别?麻烦各位了,号也是刚注册,分不是很多,请见谅

解决方案 »

  1.   

    int max = array[0];
    for(int i = 1; i < array.length; i++){
      max = max > array[i] ? max : array[i];
    }区别一时语塞啊。。
      

  2.   

    一位数组就是 一条线  二维数组就是一个面一位数组 String[] strs1 = new String[10]; 二维数组 String[][] strs2 = new String[10][10];区别就是 二维数组比一维数组多一维
      

  3.   


    那改成
    if(max < array[i]){
      max = array[i];
    }看得懂否?
      

  4.   

    這樣是一維(線性)
    1 2 3 4 5 6 7 [0] [1] [2] [3] [4] [5] [6]這樣是二維(平面)
    1 2 3 4 5 6 7  [0][0] [0][1] [0][2] [0][3] [0][4] [0][5] [0][6]
    2 3 4 5 6 7 8  [1][0] [1][1] [1][2] [1][3] [1][4] [1][5] [1][6]
    2 2 2 2 2 2 2  [2][0] [2][1] [2][2] [2][3] [2][4] [2][5] [2][6]
    3 3 3 3 3 3 3  [3][0] [3][1] [3][2] [3][3] [3][4] [3][5] [3][6]int[] x = {18,25,7,36,13,2,89,63};
    int num=Integer.MAX_VALUE; //找最小,所以一開始要設最大。
    int p=0; //位置
    for(int i=0;i<x.length;i++){
     if(x[i] < num ){
        num = [i];
        p=i;
     }
    }
    System.out.println("最小是:"+num+" 位置:"+p);
      

  5.   


    class Test 
    {
    public static void main(String[] args) 
    {
    int[] arr = {18,25,7,36,13,2,89,63};
    int max=0;
    int num=0;
    for(int i = 0 ;i<arr.length;i++){
    if(arr[i]>max){
    max=arr[i];
    num=i;
    }
    } System.out.println("最大的号码为:"+max+"---------"+"原始位置为"+num); }
    }一维数组就是一个容器,用来装东西,
    二维数组也是一个容器,不过里面装的是一维数组的
      

  6.   


    额老师和我讲的是,顶一个int num=0;
    然后一个数一个数的比较,比方说18比num大,num的值就替换成18,再比较下一个数,比他小的就不替换,比他大的就替换,这样一直到最后,最大的数的位子就出来了,具体的不太会,这是找最大数的位子的,我想,最小数应该是反过来吧……有点晕
      

  7.   

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    //18,25,7,36,13,2,89,63
    int array[]={18,25,7,36,13,2,89,63};
    int min[] = new int[2];
    min[0] = array[0];
    for(int i=0;i<array.length;i++){
    min[0] = min[0] < array[i]?min[0]:array[i];
    if(!(min[0] < array[i])){
    min[1] = i;
    }
    }
    System.out.println("最小的数:"+min[0]);
    System.out.println("位置为:"+min[1]+1);
    }
    }