这个程序这样写对吗?

来源:百度知道 编辑:UC知道 时间:2024/05/27 00:10:10
生成10 个随机整数,存入数组,按照从大到小的顺序排列并显示出来。

class Test1
{public static void main(String args[])
{int i,j,k;
int a[]={5,46,85,21,36,24,1,2,36,61};
for (i=0;i<a.length-1;i++)
{k=i;
for(j=i;j<a.length;j++)
if (a[j]>a[k]) k=j;
int temp=a[i];
a[i]=a[k];
a[k]=temp;
}
for (i=0;i<a.length;i++)
System.out.print(a[i]+" ");
System.out.println();
}

public class Untitled1 {
public static void main(String args[]) {
int i,j,k,f;
int[] a=new int[10];
for(f=0;f<10;f++){
a[f]=(int)(Math.random()*100);}//在此生成随机数并将其放入数组中
for (i=0;i<a.length-1;i++)
{k=i;
for(j=i;j<a.length;j++)
if (a[j]>a[k]) k=j;
int temp=a[i];
a[i]=a[k];
a[k]=temp;
}
for (i=0;i<a.length;i++)
System.out.print(a[i]+" ");
System.out.println();
}
}//你的问题是没有随机生成 别的程序没问题

dui

逻辑上正确,建议将temp的类型定义放在排序结构的外面。产生随机数用java.util.Random类

对!没有问题。我也写了个,切磋下。
int q[]={5,46,85,21,36,24,1,2,36,61};
for (int i = 0; i < q.length; i++) {
for (int j = i + 1; j < q.length; j++) {
if (q[j] > q[i]) {
int temp = q[i];
q[i] = q[j];
q[j] = temp;
}
}
}
for (int i = 0; i < q.leng