用c语言编写一个能演示执行集合的交 并和差运算的程序
时间: 2024-05-15 21:18:03 浏览: 10
好的,您可以使用C语言编写一个程序来演示执行集合的交,并和差运算。下面是一个简单的示例程序:
```
#include <stdio.h>
int main()
{
int set1[] = {1, 2, 3, 4, 5};
int set2[] = {4, 5, 6, 7, 8};
int intersection[5];
int unionSet[10];
int diffSet[10];
int i, j, x, flag;
//Intersection
x = 0;
for(i = 0; i < 5; i++)
{
flag = 0;
for(j = 0; j < 5; j++)
{
if(set1[i] == set2[j])
{
flag = 1;
break;
}
}
if(flag == 1)
{
intersection[x] = set1[i];
x++;
}
}
printf("Intersection: {");
for(i = 0; i < x; i++)
{
printf("%d ", intersection[i]);
}
printf("}\n");
//Union
x = 0;
for(i = 0; i < 5; i++)
{
unionSet[x] = set1[i];
x++;
}
for(i = 0; i < 5; i++)
{
flag = 0;
for(j = 0; j < 5; j++)
{
if(set2[i] == set1[j])
{
flag = 1;
break;
}
}
if(flag == 0)
{
unionSet[x] = set2[i];
x++;
}
}
printf("Union: {");
for(i = 0; i < x; i++)
{
printf("%d ", unionSet[i]);
}
printf("}\n");
//Difference
x = 0;
for(i = 0; i < 5; i++)
{
flag = 0;
for(j = 0; j < 5; j++)
{
if(set1[i] == set2[j])
{
flag = 1;
break;
}
}
if(flag == 0)
{
diffSet[x] = set1[i];
x++;
}
}
printf("Difference: {");
for(i = 0; i < x; i++)
{
printf("%d ", diffSet[i]);
}
printf("}\n");
return 0;
}
```
您可以根据需要修改和优化这个程序。希望能对您有帮助!