用C语言集合的创建,并集,交集,输出
时间: 2024-05-15 08:15:37 浏览: 67
集合的操作,C语言实现的
集合的创建可以使用C语言中的数组来实现,例如:
```c
int set1[] = {1, 2, 3, 4, 5};
int set2[] = {3, 4, 5, 6, 7};
```
这里分别创建了两个集合set1和set2,分别包含了5个元素。
接下来,我们可以使用循环和条件判断来实现集合的并集和交集操作。例如:
```c
#include <stdio.h>
int main() {
int set1[] = {1, 2, 3, 4, 5};
int set2[] = {3, 4, 5, 6, 7};
int union_set[10];
int intersection_set[10];
int union_size = 0;
int intersection_size = 0;
// union
for (int i = 0; i < 5; i++) {
union_set[union_size++] = set1[i];
}
for (int i = 0; i < 5; i++) {
int in_set1 = 0;
for (int j = 0; j < 5; j++) {
if (set2[i] == set1[j]) {
in_set1 = 1;
break;
}
}
if (!in_set1) {
union_set[union_size++] = set2[i];
}
}
printf("Union:\n");
for (int i = 0; i < union_size; i++) {
printf("%d ", union_set[i]);
}
printf("\n");
// intersection
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
if (set1[i] == set2[j]) {
intersection_set[intersection_size++] = set1[i];
break;
}
}
}
printf("Intersection:\n");
for (int i = 0; i < intersection_size; i++) {
printf("%d ", intersection_set[i]);
}
printf("\n");
return 0;
}
```
这里使用了两个数组union_set和intersection_set来存储集合的并集和交集,使用两个变量union_size和intersection_size来记录集合的大小。
在进行并集操作时,我们先将set1中的所有元素加入到union_set中,然后遍历set2中的元素,如果某个元素不在set1中,就将它加入到union_set中。
在进行交集操作时,我们遍历set1和set2中的所有元素,如果某个元素同时出现在两个集合中,就将它加入到intersection_set中。
最后,我们使用循环输出union_set和intersection_set中的元素即可。
阅读全文