选择排序法
#include "stdlib.h"
#include "stdio.h"
#include "string.h"
int main()
{
int a[6] = {2,7,3,6,4,5};
int i,j;
int k;
int temp = 0;
int min = a[0];
for(j = 0;j<6;j++)
{
//内循环扫苗线性表找出最小的元素
for(i=j;i<6;i++)
{
if(min < a[i])
{
a[i] = min;
}
}
//与a[j]置换,然后j进1
k = j;
temp = a[i];
a[i] = a[k];
a[k] = temp ;
}
for(i = 0;i<6;i++)
printf("%d ",a[i]);
system("pause");
}
问题出在那里呢
搜索更多相关的解决方案:
选择
----------------解决方案--------------------------------------------------------
int min = a[0];
min没有更新.
min的值应该是待排序序列中的第一个.
----------------解决方案--------------------------------------------------------
恩知道了,谢谢了,看了一天程序了,头都大了,
----------------解决方案--------------------------------------------------------