D:\java孙老\java文档>javac BubbleSort.java
D:\java孙老\java文档>java BubbleSort
D:\java孙老\java文档>
不明白为什么会这样,怎么没有输出结果呢?
我的源程序是这样的:
public class BubbleSort{
public static void main(String args[]){
int i,j;
int intArray[]={30,1,-9,70,25};
int l=intArray.length;
for(i=0;i<l-1;i++)
for(j=i+1;j<1;j++)
if(intArray[i]>intArray[j]){
int t=intArray[i];
intArray[i]=intArray[j];
intArray[j]=t;
{
for(i=0;i<1;i++)
System.out.println(intArray[i]+" ");
}
}
}
}
请大家帮帮小弟,在此,先谢了
----------------解决方案--------------------------------------------------------
你把两个地方应该写l的地方写成了“1”!!!!!
还有程序逻辑也有问题
我给你改了 试一下
public class Test{
public static void main(String args[]){
int i,j;
int intArray[]={30,1,-9,70,25};
int l=intArray.length;
for(i=0;i<l-1;i++)
for(j=i+1;j<l;j++)
if(intArray[i]>intArray[j]){
int t=intArray[i];
intArray[i]=intArray[j];
intArray[j]=t;
}
for(i=0;i<l;i++)
System.out.println(intArray[i]+" ");
}
}
----------------解决方案--------------------------------------------------------
呵呵,上楼的果然是厉害的,我正在修改着,等我贴上的时候,你已经贴上了@!是啊,楼主的逻辑上有错误!还有就是L与1!
public class BubbleSort
{
public static void main(String args[])
{
int i,j;
int intArray[]={30,1,-9,70,25};
int l=intArray.length;
for(i=0;i<l-1;i++)
for(j=i+1;j<l;j++)
if(intArray[i]>intArray[j])
{
int t=intArray[i];
intArray[i]=intArray[j];
intArray[j]=t;
}
{
for(i=0;i<l;i++)
System.out.println(intArray[i]+" ");
}
}
}
----------------解决方案--------------------------------------------------------
谢谢,小弟知道这回明白了,不过L和1还真的很像,嘿嘿
----------------解决方案--------------------------------------------------------
....学东西不能太死..
----------------解决方案--------------------------------------------------------