求A=AUB的C语言程序

Python029

求A=AUB的C语言程序,第1张

#include<stdio.h>

#include <string.h>

#include <conio.h>

main()

{

char a[50],b[50]

unsigned int i,j,m,n,k=0 /* i,j分别为定义集合的长度,m,n作为逐个对比?

痹赢中

新添加一个数,则k加1,最后新的集合A的长度为原来的加上k的值,这里的大小写有区分*/

printf("ipnput A and B \n")

gets(a)

printf("\n")

gets(b)

i=strlen(a)

j=strlen(b)

/*下面为判断集合B中的元素是否在集合A中出现,B中的每一个必须全部与A对比 */

for(m=0m<jm++)

{

for(n=0n<in++)

{

if(b[m]==a[n])

break

else

if(n==(i-1))

{a[i+k]=b[m] /*B中存在与A全部不同的元素,添加进去,A集合加长一位*/

k++

}

continue

}

}

for(j=0j<(i+k)j++) /* 输出新的集合A */

{

printf("%c",a[j])

}

getch()

}

typedef struct {

    ElemType* elem

    int length

int listsize

}SqList

void Union(SqList La,SqList Lb,SqList& Lc){

for(int i=k=0i<La.lengthi++){//将A中的元素复制到C中

Lc.elem[k++] = La.elem[i]

}

for(int j=0j<Lb.lengthj++){//将B中元素(不在A中)复制到C中

for(int i = 0i<La.length && La.elem[i] != Lb.elem[j]i++)

if(i == La.length) Lc.elem[k++] = Lb.elem[j]

}

Lc.length = k//修改表长

}