#include<stdio.h>
int main()
{
int arr1[1000];
int arr2[1000] ;
int n, m;
scanf("%d%d", &n, &m);
int i, j;
for (i = 0; i < n; i++)
{
scanf("%d", &arr1[i]);
}
for (i = 0; i < m; i++)
{
scanf("%d", &arr2[i]);
}
//输出
for (i = 0, j = 0; i < n ||j < m;)//注意是||号,有一个不超过限定值就能继续
{
//判断是否有一个数组输出完了
if (i == n&&j<m)
{
for (; j < m; j++)
{
printf("%d ", arr2[j]);
}
break;
}
else if (j==m&&i<n)
{
for (; i < n; i++)
{
printf("%d ", arr1[i]);
}
break;
}
//正常判断并输出值
if(arr1[i] <= arr2[j])
{
printf("%d ", arr1[i]);
i++;
}
else
{
printf("%d ", arr2[j]);
j++;
}
}
return 0;
}
【C语言】有序数列合并
最新推荐文章于 2023-11-01 01:06:07 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)