楼上的那个办法是正确的
我这个就是不用再次排序 逻辑判断比较和2个数组元素的合并都放在一起了
试试对不对 网吧里没有工具 很是难受
#include
void main()
{
int a[]={1,8,11,14,25};
int b[]={1,3,5,7,9,11,13,14,15,18,33};
int c[16];
int a1=0,b1=0;
for(int i=0;i<16;i++)
{
if(a1<5&&b1<11)
{
if(a[a1]}
else if(a1<5){c[i]=a[a1];a1++;}
else{c[i]=b[b1];b1++;}
}
}
#include
#include
#define ok 1
#define error 0
#define LIST_INT_SIZE 10
#define elemtype int
typedef struct{
int *elem;
int length;
int listsize;
}sqlist;
int Init_sqlist(sqlist *la)
{
(*la).elem=(int*)malloc(LIST_INT_SIZE*sizeof(int));
if(!(*la).elem)return error;
(*la).length=0;
(*la).listsize=LIST_INT_SIZE;
return ok;
}
void mergelist_sq(sqlist la,sqlist lb,sqlist &lc);
int main()
{
int i;sqlist la,lb,lc;
Init_sqlist(&la);
Init_sqlist(&lb);
for(i=0;i<4;i++)
scanf(
先把两个组的数合成一个组,然后按冒泡法排序就行啦。