为什么for循环中的 i 从8开始a

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

LZHR

2015-08-16 12:08

for (i=8;i<10;i--)

{

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

{

if (arr[j]>arr[j+1])

{

double temp;

temp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

为什么上述的i=8,i是从8开始呢?求指教。谢谢哈。

写回答 关注

7回答

  • 封不羁
    2015-08-17 16:53:13
    已采纳

    看你这代码是冒泡排序的,你可以试着自己手动比较两趟,假设有一个包含十个元素的数组,你第一趟冒泡排序想要的目的是将最大或者最小的元素放在数组最后,那就要从第一个元素开始比较,一共比较9次,所以 i 从 8 开始,内层循环一共循环 9 次,数组元素从第一个元素开始与后一个元素进行比较,直至比较到最后一个元素为止

    希望对你有所帮助: )

    LZHR

    非常感谢!

    2015-11-01 12:43:47

    共 1 条回复 >

  • 小小小丶小白
    2015-09-13 17:01:26

    你回到6.1 记住数字的下标是从0开始的

  • 冯陈褚卫
    2015-09-04 22:37:06

    http://img.mukewang.com/55e9ac790001347302220224.jpg这不成9了!


  • 红尘客栈丶
    2015-08-27 22:06:23

    再说一句,你可以看看我的那个问题,例题冒泡排序具体过程,应该就能明白为什么是8,当然主要是因为有10个数字

  • 红尘客栈丶
    2015-08-27 15:49:55

    10个数字冒泡排序,某个数字只需和其他九个数字比较即可,不用跟本身比较,所以是8,   0-8就是9个

  • Virture
    2015-08-16 16:44:07

    看你程序所要解决的问题,每个程序不一定是要从8开始循环的

  • 我不懂public
    2015-08-16 13:27:23

    是从8开始的啊,你难道认为是7吗?

C语言入门

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

926021 学习 · 20793 问题

查看课程

相似问题