public void Fun(int[] a)
{
int i,j,temp;
for(i=0;i<a.length;i++)
{ for(j=0;j<a.length-i-1;j++)
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1]
a[j+1]=temp;
}
}
}
上面的代码是我自己写的。但是输出有问题。请高手解答。。。
public void Fun(int[] a)
{
int i,j,temp;
for(i=0;i<a.length;i++)
{ for(j=0;j<a.length-i-1;j++)
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1]
a[j+1]=temp;
}
}
}
上面的代码是我自己写的。但是输出有问题。请高手解答。。。
第一重循环改
for(i=1;i<a.length;i++)
第二重循环改
for(j=0;j<a.length-i;j++)
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1]
a[j+1]=temp
第二重循环错了
public void Fun(int[] a)
{
int i,j,temp;
for(i=0;i<a.length;i++)
{ for(j=i+1;j<a.length-1;j++)//应该是这样
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1]
a[j+1]=temp;
}
}
}