c语言用指针的方法对十个数字排序

[复制链接]
查看11 | 回复6 | 2021-1-27 05:13:52 | 显示全部楼层 |阅读模式
圈住的那个为什么要有if(k!=i),求解释谢谢大神们



分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:13:52 | 显示全部楼层
if(k!=i)才需要交换。aa[k]
如果k==i,没有必要交换了。
回复

使用道具 举报

千问 | 2021-1-27 05:13:52 | 显示全部楼层
引用1楼ctrigger的回复:if(k!=i)才需要交换。aa[k]
如果k==i,没有必要交换了。

k有等于i的时候吗?求解
回复

使用道具 举报

千问 | 2021-1-27 05:13:52 | 显示全部楼层
引用2楼本来啊的回复:Quote: 引用1楼ctrigger的回复:if(k!=i)才需要交换。aa[k]
如果k==i,没有必要交换了。

k有等于i的时候吗?求解

有。就是上面一个for循环,if条件都不满足。
回复

使用道具 举报

千问 | 2021-1-27 05:13:52 | 显示全部楼层
第二层for循环完,k值没变,也就是x比后边的数都大,就不用换
回复

使用道具 举报

千问 | 2021-1-27 05:13:52 | 显示全部楼层
引用引用1楼ctrigger的回复:
if(k!=i)才需要交换。aa[k]
如果k==i,没有必要交换了。
k有等于i的时候吗?求解

这个例子是数组从大到小进行排序,循环一次,找出里面最大的数挪到x[0],第二次把次大的数挪到x[1],你可以预想下,刚好数组第一个数字是这数组里最大的数的时候,它还需要交换吗?
回复

使用道具 举报

千问 | 2021-1-27 05:13:52 | 显示全部楼层
引用5楼qzjhjxj的回复:引用引用1楼ctrigger的回复:
if(k!=i)才需要交换。aa[k]
如果k==i,没有必要交换了。
k有等于i的时候吗?求解

这个例子是数组从大到小进行排序,循环一次,找出里面最大的数挪到x[0],第二次把次大的数挪到x[1],你可以预想下,刚好数组第一个数字是这数组里最大的数的时候,它还需要交换吗?

明白了非常感谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行