将三个数组合并成一个C
时间: 2024-12-15 16:20:55 浏览: 1
将三个数组合并成一个数组在C语言中通常涉及到内存管理和数据复制。这可以通过动态内存分配、预定义大小的大数组或者使用结构体数组来实现。这里提供一种简单的示例,假设所有数组都有相同的元素类型:
```c
#include <stdio.h>
#include <stdlib.h>
// 假设我们有三个int类型的数组
int arr1[5] = {1, 2, 3};
int arr2[5] = {4, 5, 6};
int arr3[5] = {7, 8, 9};
// 定义一个足够大的新数组来存放合并后的结果
int combined[15]; // 假设每个原数组长度为5,总共需要15个位置
void merge_arrays(int* dst, int* src1, int* src2, int* src3, int size) {
int i = 0;
while (i < size) {
dst[i++] = src1[i];
dst[i++] = src2[i];
dst[i++] = src3[i];
}
}
int main() {
int combined_size = sizeof(arr1) + sizeof(arr2) + sizeof(arr3); // 总大小
merge_arrays(combined, arr1, arr2, arr3, sizeof(arr1)); // 合并到combined数组
// 打印合并后的数组
for (int j = 0; j < combined_size; j++) {
printf("%d ", combined[j]);
}
return 0;
}
阅读全文