【C语言】之''求差集''

老师平时布置的希冀系统上的作业答案,仅供参考!

【问题描述】

两个集合的差集定义如下:
集合A、B的差集,由所有属于A但不属于B的元素构成。
输入两个集合A、B,每个集合中元素都是自然数。求集合A、B的差集。

【输入形式】

从标准输入接收集合中的自然数元素,以空格分隔。-1表示输入结束。
其中,每个集合都不输入重复的元素。

【输出形式】

输出差运算后集合中的元素,以空格分隔。输出元素的顺序与原有集合A输入的顺序一致。
如果A、B的差集为空集,则不输出任何数值。

【样例输入】

2 8 3 4 -1
6 1 4 9 -1

【样例输出】

2 8 3

【样例说明】

从标准输入接收集合中的自然数元素,输出集合A、B的差集。

【参考答案】

#include <stdio.h>

int main(){
    int a[100],b[100],i=0,j=0,m,n;

    do{
        scanf("%d",&a[i++]);
    }while(a[i-1]!=-1);
    do{
        scanf("%d",&b[j++]);
    }while(b[j-1]!=-1);

    for(m=0;m<i-1;m++){
        for(n=0;n<j-1;n++){
            if(a[m]==b[n])
                break;
        }
        if(n==j-1)
            printf("%d ",a[m]);
    }
}
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容