有两个有序数组,分别存放数据为:1,3,5,7,9和2,4,6,8,10,请编写程序将两个有序数组合并,合并后的数组依然有序。(不允许使用排序算法)
1条回答 默认 最新
- 索利亚噶通 2021-12-21 19:53关注
#include<stdio.h> #include<stdlib.h> int main(){ int arr1[5] = {1, 3, 5, 7, 9}; int arr2[5] = {2, 4, 6, 8, 10}; int* arr; arr = (int*)malloc(sizeof(int) * 10); int i, j, k; i = j = k = 0; while (i < 5 && j < 5){ if (arr1[i] < arr2[j]) arr[k++] = arr1[i++]; else arr[k++] = arr2[j++]; } while (i < 5) arr[k++] = arr1[i++]; while(j < 5) arr[k++] = arr2[j++]; for (i = 0; i < 10; i++) printf("%d ", arr[i]); }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 TLS1.2协议通信解密
- ¥40 图书信息管理系统程序编写
- ¥20 Qcustomplot缩小曲线形状问题
- ¥15 企业资源规划ERP沙盘模拟
- ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在
- ¥15 前端echarts坐标轴问题
- ¥15 ad5933的I2C
- ¥15 请问RTX4060的笔记本电脑可以训练yolov5模型吗?
- ¥15 数学建模求思路及代码
- ¥50 silvaco GaN HEMT有栅极场板的击穿电压仿真问题