一个java问题,随机输入一组数字,从小到大排列,然后表示它是第几次输入的数字(问题在这),真心求助。

要输入几个数?8
第1个数字: 4
第2个数字: 3
第3个数字: 2
第4个数字: 1
第5个数字: 8
第6个数字: 7
第7个数字: 6
第8个数字: 5

第1个数字: 1(原来的第4个数字)
第2个数字: 2(原来的第3个数字)
第3个数字: 3(原来的第2个数字)
第4个数字: 4(原来的第1个数字)
第5个数字: 5(原来的第8个数字)
第6个数字: 6(原来的第7个数字)
第7个数字: 7(原来的第6个数字)
第8个数字: 8(原来的第5个数字)
import java.util.Scanner;

class ArrayDemo04 {
public static void main(String args[]) {
int item[] = new int[100];
int a, b, t;
int count;

Scanner sc = new Scanner(System.in);
System.out.print("要输入几个数? ");
count=sc.nextInt();
for(a=0; a<count; a++) {
System.out.print("第"+(a+1)+"个数字:")
item[a]=sc.nextInt();
}

for(a=1; a<count; ++a)
for(b=count-1; b>=a; --b){

if(item[b-1] > item[b]){

t = item[b-1];
item[b-1] = item[b];
item[b] = t;
}
}

for(t=0; t<count; t++)System.out.print(第"+(t+1)+"个数字:"+item[t]+" 这里就不会了!!! ");
}
}
求教,最后的那个怎么表示

第1个回答  2011-12-16
放MAP改动最小。。把原来的数字位置和数字关联起来。。第二次用数字输出原数字位置。。
第2个回答  2011-12-16
int[] num = new int[]{4,2,1,3,5,6};
Arrays.sort(num);
for(int i :num)
System.out.println(i);
第3个回答  2011-12-16
你可以定义一个hashtable
相似回答