1、利用一维数组存放键盘输入 10 个整数,用选择排序方法方法使该组 10
个数有序 (升序或降序)输出。用所学过的高级程序设计语言实现验证下
列选择排序算法
(注意!下面是伪装代码不是程序代码)
PRO SELECTSORT(VAR,R)
FOR i=1 TO n-1 DO
Kel
FOR j= i+1 TO n DO
IF R().KEY<R(k).KEY THEN
K=j
ENDIF
NEXT i
IF i<>k THEN
Temp=R(k)
R(k)=R(i)
R(i) = Temp
ENDIF
NEXT I
END
#include <stdio.h>
//选择排序,升序
void select_sort(int a[],int n)
{
int i,j;
int minindex,tmp;
for (i=0;i<n-1;i++)
{
minindex = i;
//找出第i小的数所在的位置
for(j=i+1;j<n;j++)
{
if(a[j] < a[minindex])
minindex = j;
}
//将第i小的数放在第i个位置
if (i != minindex)
{
tmp = a[i];
a[i] = a[minindex];
a[minindex] = tmp;
}
}
}
int main()
{
int i,a[10];
for(i=0;i<10;i++)
scanf("%d",&a[i]);
select_sort(a,10);
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}