插入排序后将两数组合并排序出问题!
#include <stdio.h>#include <stdlib.h>
int *sort(int da[])
{
int i,j,t;
for (i=0;i<9;i++)
{
for(j=i;j<10;j++)
{
if(da[i]>da[j])
{
t=da[i];da[i]=da[j];da[j]=t;
}
}
}
return da;
}
int *combine(int *x1,int *x2)
{
int i=0,j=0,m=0;
int *sorted;
do
{
if(*(x1+i)<=*(x2+j))
*(sorted+m++)=*(x1+i++);
else
*(sorted+m++)=*(x2+j++);
}while(i+j<19);
return sorted;
}
void main()
{
int i;
int *a2,*b2,*a3;
int a1[10]={11,3,21,5,13,41,23,22,9,10},b1[10]={1,2,33,27,34,19,18,42,7,20};
a2=sort(a1);
b2=sort(b1);
a3=combine(a2,b2);
for(i=0;i<20;i++)
printf("%d,",*(a3+i));
system("pause");
}