第二个for循环i为什么等于8

来源:6-5 数组的应用(一)

慕雪2185926

2021-11-29 17:05

第二个for循环i为什么等于8

写回答 关注

3回答

  • weixin_慕盖茨2597418
    2022-02-11 19:52:05

     因为原题中是对十个身高进行排序,所以是总共有10个数,然后以下面这组数为例:

    数组:    0    1  2  3  4  5  6  7  8  9

    第一次:|√|-|-|-|-|-|-|-|-|

    这是第一次比较结束,就是还剩八组没比较,所以i=8(因为for语句是先执行i=8,i>=0,再执行for大括号里面的语句,然后再执行i--)

    因为条件是i>=0,(就是最后一次比较结束,i=0代表此时还剩余0组没比较的意思),所以其实依旧是循环9次

    个人分析应该是这样的,,,


  • qq_慕妹1007508
    2021-12-14 21:41:16

    至多进行八次循环可以排完,你可以举个例子:9,8,7,6,5,4,3,2,1 一个九个数,最多进行八次这样的交换循环

    weixin...

    但是题里面不是有10个数吗?要进行9次循环比较,这块我不理解为啥是8

    2022-02-26 14:55:16

    共 1 条回复 >

  • qq_慕村6308735
    2021-11-29 19:54:23

    从数组尾部遍历,由于数组arr[ ]长度为9,最大下标是8,所以第二个循环是从i=8开始的



    克里斯老刘

    数组长度arr[ ]长度为10,i=8是为了下面的arr[j]>arr[j+1],如果i=9的话arr[j+1]将等于10,就超出了界限,所以只能<=8

    2022-02-26 18:47:34

    共 3 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926207 学习 · 20797 问题

查看课程

相似问题