解题思路:
简单选择排序的基本思想:第1趟,在待排序记录r[1]~r[n]中选出最小的记录,将它与r[1]交换;第2趟,在待排序记录r[2]~r[n]中选出最小的记录,将它与r[2]交换;以此类推,第i趟在待排序记录r[i]~r[n]中选出最小的记录,将它与r[i]交换,使有序序列不断增长直到全部排序完毕。
注意事项:
参考代码:
#include<stdio.h>
int main()
{
int i, j, t, a[10];
for(i = 0; i < 10; i++)
scanf("%d", &a[i]);
for(i = 0; i <= 8; i++) //共n-1趟排序
{
for(j = i+1; j < 10; j++) //第i趟排序从后n-i-1个元素中选一个最小的,n-i-1-(i+1)=n=10
{
if(a[j] < a[i])
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
for(i = 0; i < 10; i++)
printf("%d\n", a[i]);
return 0;
}
0.0分
0 人评分
WU-判定字符位置 (C++代码)浏览:1407 |
printf基础练习2 (C语言代码)浏览:748 |
关于float,double变量的几点说明浏览:1812 |
Tom数 (C语言代码)浏览:527 |
第三届阿里中间件性能挑战赛-总决赛亚军比赛攻略浏览:1145 |
简单的a+b (C语言代码)浏览:512 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:514 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:676 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1245 |
【出圈】 (C++代码)简单循环浏览:640 |