请问下各位前辈,c语言的选择法排序,比如下面这个从小到大排五个数,为什么下标要在开始设成i,然后为什么两个值交换的步骤不是在if语句里面,拜托了!
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已结题
关于c语言的选择法排序
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除
- 收藏 举报
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
技术专家团-小桥流水 2022-01-11 14:21关注i 从 0开始,把min设成 i 的意思是,每次循环,找到第(i+1)小的数据,并用min记录下标,然后把这个数放在a[i]位置。
过程:
当i =0 是,min=0,默认此时的最小值就是a[0],然后遍历a[1]以后的数据,找到最小的数据,并用min记录其下标,最后,把a[min]放在a[0]的位置。也就是a[0]是数组中的最小值。然后继续循环
i=1,min=i=1,默认此时的最小值就是a[1],因为最小值已经放在a[0]了,所以从a[i+1]开始找剩余数据中的最小值,并用min记录下标,然后把它放在a[1]位置。
后面的以此类推
所以,每次找最小值的时候,先默认当前位置的值就是该位置的最小值,然后遍历它后面的所有数,找到后面所有数中的最小值,然后把最小值放在当前位置。本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 2无用举报 编辑记录微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2023-04-18 12:03回答 2 已采纳 由x计算y的公式是什么,是指y=0 0.2 0.4 0.6...这样吗
- 2022-06-26 16:09回答 4 已采纳 读取文件用fscanf() 函数,写入文件用 fprintf()函数,OLD_adjust()和OLD_delete() 里不管写入和读取文件,全用fscanf()函数。还有其他一些小问题,修改完善如
- 2021-10-18 03:33回答 1 已采纳 #include<iostream> using namespace std; void sort(int n,double p[]) { double temp=0;
- 2024-12-05 13:52对于初学者来说,通过C语言实现选择排序算法是一个很好的练习项目,它有助于加深对算法和编程语言的理解。而对于经验丰富的开发者,尽管选择排序不是最优的选择,但它仍然是算法知识库中不可或缺的一部分。
- 2021-06-30 14:31回答 1 已采纳 编程语言不限制就用python了,这个相对简单些。 设置两个列表,循环字符串判断每个字符是英文字或是数字,添加到不同的列表中。 对两个列表进行由小到大排序,再拼接成字符串 代码如下:(如有帮助,望采纳
- 2017-04-23 05:34回答 4 已采纳 13行的sz[i]改成sz[j]就行了
- 2022-06-16 00:05回答 1 已采纳 出现乱码多半是数组越界或者野指针引起的。在Student_DisplaySingle(index);中打断点看看学生信息是否正确。
- 2024-11-07 23:43在编程实现选择排序时,通常使用C语言这样的过程式编程语言来编写。C语言以其高效的执行性能和对内存的精细控制而著称,非常适合用来实现算法效率要求高的程序。通过C语言实现选择排序,不仅可以加深对排序算法本身...
- 2020-05-18 09:22回答 1 已采纳 ``` #include #include #define STUDENT_COUNT 10 #define NAME_LEN 64 struct Student {
- 2021-10-06 10:48回答 1 已采纳 9 class class1(): def __init__(self,num): self.num=num def function1(self): r
- 2016-04-10 21:08回答 5 已采纳 学习c++了解其语法即可,不用去深究算法(有精力再研究), 然后学习gui框架mfc(现在过时了,但是现在大部分window应用都是使用mfc, 资料也是很全的, 完成需求管他过时不过时的), 可以
- 2022-03-03 08:35咸鱼吐泡泡的博客 选择排序法是一种不稳定的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾...
- 2021-12-05 03:03回答 1 已采纳 因为输入时’b’先于’T’输入,所以输出时也先打印’b’的统计信息==你这个样例输入和输出怎么能得出这个结论的呢?
- 2020-04-28 10:25凉风起天末、的博客 选择法降序排序 思路:通过反复求最大值进行排序; a,一组数有n个数 b,通过比较前一个数值与后一个数值,找出其中最大的数,放在a[0]中; c,通过比较前一个数值与后一个数值,找出第二大数,放在a[1]中; … d...
- 2024-02-28 06:21冒泡法排序c语言程序
- 没有解决我的问题, 去提问
问题事件
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司