为了账号安全,请及时绑定邮箱和手机立即绑定

这为啥是从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;             //将较大的数放在后面    

            }                 

        }                

    }


正在回答

1 回答

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

3 回复 有任何疑惑可以回复我~
#1

慕粉4001126 提问者

非常感谢!
2016-11-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信