此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【lianlinyu】截止到2008-08-02 12:17:37的历史汇总数据(不包括此帖):
发帖的总数量:14                       发帖的总分数:120                      每贴平均分数:8                        
回帖的总数量:17                       得分贴总数量:2                        回帖的得分率:11%                      
结贴的总数量:14                       结贴的总分数:120                      
无满意结贴数:0                        无满意结贴分:0                        
未结的帖子数:0                        未结的总分数:0                        
结贴的百分比:100.00%               结分的百分比:100.00%                  
无满意结贴率:0.00  %               无满意结分率:0.00  %                  
敬礼!

取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=lianlinyu

解决方案 »

  1.   

    for(int j=0;j <agrs.length-1;j++)这里不对。应该是for(int j=0;j<i;j++)
      

  2.   

    for(int i=0;i <agrs.length;i++){ 
    for(int j=i+1;j <agrs.length-1;j++){ 
    int a = Integer.parseInt(agrs[i]); 
    int b = Integer.parseInt(agrs[j]);
     
    if(a > b){ 
    int temp = a; 
    a = b; 
    b = temp; 


      

  3.   

    for(int i=0;i <agrs.length-1;i++){ 
    for(int j=i+1;j <agrs.length-1;j++){ 
    int a = Integer.parseInt(agrs[i]); 
    int b = Integer.parseInt(agrs[j]); 

    if(a > b){ 
    int temp = a; 
    a = b; 
    b = temp; 

      

  4.   

    for(int i=0;i <agrs.length;i++){ 
    for(int j=i+1;j <agrs.length-1;j++){ 
    int a = Integer.parseInt(agrs[i]); 
    int b = Integer.parseInt(agrs[j]); 
    if(a > b){ 
    int temp = a; 
    a = b; 
    b = temp; 

      

  5.   

    谢谢大家啊
    其实我排序的没错
    只是传参的时候出的错误以下是我没有传参的排序 代码还是没变 就能排序package test;public class SortTest { public static void main(String[] agrs){

    int[] a = {10,2,5,11,20,30};

    System.out.println("排序前的数组为:");
    for(int n=0;n<a.length;n++){
          System.out.print(a[n]+" ");
    }

    for(int i=0;i<a.length-1;i++){
    for(int j=0;j<a.length-1;j++){
    if(a[j] < a[j+1]){
    int temp  = a[j];
    a[j] = a[j+1];
    a[j+1]  = temp;
    }
    }
    }
    System.out.println();
    System.out.println("排序后的数组为:");
    for(int i=0;i<a.length;i++){
    System.out.print(a[i]+" ");
    }

    }
    }
      

  6.   

    多了解几种排序算法,不管java,vb都会有好处的。
    冒泡只是一种简单,而且很垃圾的算法,二分法,等都比它的效率要高很多,
    建议多了解其他算法。。
    呵呵
      

  7.   


    int a[] ={10,2,5,11,20,30};
    // int temp;
    public void sort(){
    for(int i=0;i<a.length;i++)
    {
    for(int j=0;j<a.length-i-1;j++)
    {
    if(a[j]<a[j+1])
    {
    //未使用中间变量,
    a[j+1]=a[j+1]+a[j];
    a[j]=a[j+1]-a[j];
    a[j+1]=a[j+1]-a[j];
    // temp=a[j+1];
    // a[j+1]=a[j];
    // a[j]=temp;
    }

    }
    }
    for(int i=0;i<a.length;i++){
    System.out.println(a[i]);
    }
    }
      

  8.   


    import   java.io.*; 
    public   class   maopao1 

      public   static   void   main(String   args[])throws   Exception 

    int   array[]   =   new   int[]{10,20,-9,-5,0};  
    for(int   i=0;i <array.length-1;i++) 

    for(int   j=i+1;j <array.length;j++) 

    int   a; 
    if(array[i]> array[j]) 

    a   =   array[i]; 
    array[i]   =   array[j]; 
    array[j]   =   a; 


    } for(int   i=0;i <array.length;i++) 

    System.out.println( "array[ "+i+ "]= "+array[i]); 


    }
      

  9.   


       for(int i=0;i <agrs.length-1;i++)
       { 
            for(int j=0;j <agrs.length-1;j++)
            { 
                  int a = Integer.parseInt(agrs[j]); 
                  int b = Integer.parseInt(agrs[j+1]); 
                  if(a > b)
                  { 
                       int temp = a; 
                       a = b; 
                       b = temp; 
                  }
             }
      }
    你在这里只把数组里面一前一后的值赋给了变量a,b,你只把a,b的值替换了位置,你的数组里面的值没有发生变化,所以在打印数组里面的内容还是和没有排序一样的