求大神指点指点。

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

616516334

2016-07-20 11:19

for(i=8; i>=0; i--)//控制每趟比较的最大下标


 {


        for(j=0;j<=i;j++)//控制每次相邻元素的下标


        {


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


这两个for  看不懂在做什么 在运行什么都不知道。。。比较两个数大小、排序  直接用if后面的不就行了吗?


写回答 关注

2回答

  • ___PG
    2016-07-20 16:17:38
    已采纳

    i是循环次数控制,j是循环数组里面的对象,要实现整个数组的冒泡排序光对比两个单独的数组的数是不够的,要一次次循环换位排序,i,j的作用就是控制循环。

    616516...

    万分感谢。

    2016-07-20 19:32:51

    共 1 条回复 >

  • 慕粉3689888
    2016-07-20 15:16:29

    一重for循环只能完成一次冒泡,一次冒泡只是将最大的数换到了最后,其他位置的数还是无序的

C语言入门

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

926020 学习 · 20793 问题

查看课程

相似问题