数组进行****数据归并
用了3个数组,结构都将是具有一定顺序的,比如我的是:非递减的!
用i, j做指针下标,进行移动!
注意判断条件及剩余数据,注意处理完整性!
#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;
int a[100];
int b[100];
int c[200], e=0;
int main()
{
int i, j;
int n, m;
scanf("%d %d", &n, &m );
for(i=0; i<n; i++)
{
scanf("%d", &a[i] );
}
for(j=0; j<m; j++)
{
scanf("%d", &b[j] );
}
i = 0;
j = 0;
while(i<n && j<m )
{
if(a[i] <= b[j] )
{
c[e++] = a[i] ;
i++;
}
else
{
c[e++] = b[j];
j++;
}
}
if(i==n && j<m)
{
while(j<m)
{
c[e++] = b[j];
j++;
}
}
else if(j==m && i<n)
{
while(i<n)
{
c[e++] = a[i] ;
i++;
}
}
for(i=0; i<e; i++)
{
if(i==0)
printf("%d", c[0] );
else
printf(" %d", c[i] );
}
printf("\n");
return 0;
}

浙公网安备 33010602011771号