/****************************************
// 函数名称:xz_sort_xd
// 函数功能:使用选择法对数据进行排序--使用指针的操作
// 入口参数:排序数据的首地址 数据长度
// 出口参数:数据首地址
// 返 回 值:无
/****************************************/
void xz_sort_xd(int *point,int num)//从小到大排序
{
int i,j,k,tem;
int *po;
int sj_min,F_flag;
po=point;//保存首地址
k=0;
for(i=0;i<num-1;i++)
{
sj_min=*(point+i);//第几(i[i=0表示第一个数]+1)个最小数
point=point+i+1;//指向下一个
F_flag=0;
for(j=i+1;j<num;j++,point++)
{
if(sj_min>*point)
{
sj_min=*point;
k=j;//保存下标
F_flag=1;
}
}
point=po;
if(F_flag)
{
tem=*(point+i);
*(point+i)=sj_min;
*(point+k)=tem;
}
}
}
/****************************************
// 函数名称:xz_sort1_xd
// 函数功能:使用选择法对数据进行排序--使用数组的操作
// 入口参数:排序数据的首地址 数据长度
// 出口参数:数组
// 返 回 值:无
/****************************************/
void xz_sort1_xd(int a[],int num)//选择法数组操作从小到大
{
int i,j,min,tem;
for(i=0;i<N-1;i++)
{
min=i;
for(j=i+1;j<N;j++)
{
if(a[min]>a[j]) min=j;
}
tem=a[i];
a[i]=a[min];
a[min]=tem;
}//按从小到大排序
}