以下是一个生成去除两个数组 A 和 B 中重复的数并放入数组 C 中的 C 语言代码示例:
```c
#include <stdio.h>
#define MAX_SIZE 100
void removeDuplicates(int A[], int sizeA, int B[], int sizeB, int C[], int *sizeC) {
int visited[MAX_SIZE] = {0}; // 用于标记已经访问过的元素
*sizeC = 0; // 初始化数组 C 的大小为 0
// 遍历数组 A,将不重复的元素添加到数组 C
for (int i = 0; i < sizeA; i++) {
if (!visited[A[i]]) {
C[*sizeC] = A[i];
visited[A[i]] = 1;
(*sizeC)++;
}
}
// 遍历数组 B,将不重复的元素添加到数组 C
for (int i = 0; i < sizeB; i++) {
if (!visited[B[i]]) {
C[*sizeC] = B[i];
visited[B[i]] = 1;
(*sizeC)++;
}
}
}
int main() {
int A[] = {1, 2, 3, 4, 5};
int sizeA = sizeof(A) / sizeof(A[0]);
int B[] = {4, 5, 6, 7, 8};
int sizeB = sizeof(B) / sizeof(B[0]);
int C[MAX_SIZE];
int sizeC;
removeDuplicates(A, sizeA, B, sizeB, C, &sizeC);
printf("数组 C 中的元素:");
for (int i = 0; i < sizeC; i++) {
printf("%d ", C[i]);
}
printf("\n");
return 0;
}
```
这段代码定义了一个 `removeDuplicates` 函数,它接受两个整数数组 `A` 和 `B`,以及它们的大小 `sizeA` 和 `sizeB`。函数会将去除重复元素后的结果存储在数组 `C` 中,并通过指针 `sizeC` 返回数组 `C` 的大小。
在 `main` 函数中,我们定义了两个示例数组 `A` 和 `B`,并调用 `removeDuplicates` 函数来去除重复元素并将结果存储在数组 `C` 中。最后,我们遍历数组 `C` 并打印其中的元素。
请注意,这只是一个示例代码,假设数组元素的范围在 0 到 99 之间。如果实际情况有所不同,你可以根据自己的需求进行修改和扩展。
#include <stdio.h>
#define MAX_SIZE 100
void removeDuplicates(int A[], int sizeA, int B[], int sizeB, int C[], int *sizeC) {
int visited[MAX_SIZE] = {0}; // 用于标记已经访问过的元素
*sizeC = 0; // 初始化数组 C 的大小为 0
// 遍历数组 A,将不重复的元素添加到数组 C
for (int i = 0; i < sizeA; i++) {
if (!visited[A[i]]) {
C[*sizeC] = A[i];
visited[A[i]] = 1;
(*sizeC)++;
}
}
// 遍历数组 B,将不重复的元素添加到数组 C
for (int i = 0; i < sizeB; i++) {
if (!visited[B[i]]) {
C[*sizeC] = B[i];
visited[B[i]] = 1;
(*sizeC)++;
}
}
}
int main() {
int A[] = {1, 2, 3, 4, 5};
int sizeA = sizeof(A) / sizeof(A[0]);
int B[] = {4, 5, 6, 7, 8};
int sizeB = sizeof(B) / sizeof(B[0]);
int C[MAX_SIZE];
int sizeC;
removeDuplicates(A, sizeA, B, sizeB, C, &sizeC);
printf("数组 C 中的元素:");
for (int i = 0; i < sizeC; i++) {
printf("%d ", C[i]);
}
printf("\n");
return 0;
}