#include <stdio.h>
#include <string.h>
#define N 4
#define M 5
void display(int num[],int count)
{
int i;
for(i=0;i<count;i++)
{
printf("%d ",num[i]);
}
printf("\n");
}
void main()
{
int m,n;//元素个数
int i,j,k=0;
int a[N]={0},b[M]={0},c[M+N]={0};
static int count=0;//用于计算a中跟b中不想等的元素的个数
printf ("请输入集合a内容:\n");
for(i=0;i<N;i++)
{
scanf ("%d",&a[i]);
}
display(a,N);
printf ("请输入集合b内容:\n");
for(j=0;j<M;j++)
{ scanf ("%d",&b[j]);
}
display(b,M);
//printf("下面是并后的数组:\n");
for(i = 0; i < N;i++)
{
//从集合a中取出元素,去遍历集合b中的所有元素
for(j = 0;j < M;j++)
{
//如果相同则跳出遍历
if(a[i]==b[j])
break; }
//判断:此时存在两种情况1) 当前集合a的元素与集合b的元素相同
//2)遍历完了集合b的数组后不存在相同的元素
if(j == M)
{
c[k]=a[i];
k++;
}
}
//把集合b的所有元素存进c中
for(j = 0;j < M;j++)
{
c[k++]=b[j];
}
printf("集合a与集合b的并集为:\n");
display(c,k);
fflush(stdin); //清理缓冲区
#include <string.h>
#define N 4
#define M 5
void display(int num[],int count)
{
int i;
for(i=0;i<count;i++)
{
printf("%d ",num[i]);
}
printf("\n");
}
void main()
{
int m,n;//元素个数
int i,j,k=0;
int a[N]={0},b[M]={0},c[M+N]={0};
static int count=0;//用于计算a中跟b中不想等的元素的个数
printf ("请输入集合a内容:\n");
for(i=0;i<N;i++)
{
scanf ("%d",&a[i]);
}
display(a,N);
printf ("请输入集合b内容:\n");
for(j=0;j<M;j++)
{ scanf ("%d",&b[j]);
}
display(b,M);
//printf("下面是并后的数组:\n");
for(i = 0; i < N;i++)
{
//从集合a中取出元素,去遍历集合b中的所有元素
for(j = 0;j < M;j++)
{
//如果相同则跳出遍历
if(a[i]==b[j])
break; }
//判断:此时存在两种情况1) 当前集合a的元素与集合b的元素相同
//2)遍历完了集合b的数组后不存在相同的元素
if(j == M)
{
c[k]=a[i];
k++;
}
}
//把集合b的所有元素存进c中
for(j = 0;j < M;j++)
{
c[k++]=b[j];
}
printf("集合a与集合b的并集为:\n");
display(c,k);
fflush(stdin); //清理缓冲区
getchar();
}