问答详情
源自:6-5 数组的应用(一)

这为啥是从8(倒数第二个)开始,不应该是从9(倒数第一个)开始的吗?

for(i=8; i>=0; i--)

    {

        for(j=0;j<=i;j++)

        {

            if(      arr[j]>arr[j+1]      )      //当前面的数比后面的数大时

            {

                double temp;    //定义临时变量temp

                temp=arr[j];     //将前面的数赋值给temp

                arr[j]=arr[j+1];              //前后之数颠倒位置

                arr[j+1]=temp;             //将较大的数放在后面    

            }                 

        }                

    }


提问者:慕粉4001126 2016-11-13 11:30

个回答

  • Void_main
    2016-11-13 21:30:28
    已采纳

    10个数要比较9趟,第一个for循环中的i是比较的次数(0~8一共9次),第二个for循环中的j是数组下标,因为数组是从0开始存储的,所以第一趟比较时,for(j=0;j<=i;j++) 只需执行一次就够了。