C语言给定两个集合A和B,,将A-B的元素排序后输出,输入两行,分别为两行,分别为A

输出为:5 1 2 3 4 5
4 1 2 3 4
输出:5

#include <stdio.h>
#include <stdlib.h>
int minus(int *a, int m, int *b, int n)
{
    int i,j,k;
    for(i = 0; i < n; i ++)
    {
        for(j = 0; j < m; j ++)
        {
            if(a[j] == b[i])
            {
                for(k=j;k<m-1;k++)
                    a[k]=a[k+1];
                j--;
                m--;
            }
        }
    }
    return m;
}

int main()
{
    int *a,*b,m,n,i;
    scanf("%d",&m);
    a=(int *)malloc(sizeof(int)*m);
    for(i=0;i<m;i++)
        scanf("%d",a+i);
     scanf("%d",&n);
    b=(int *)malloc(sizeof(int)*n);
    for(i=0;i<n;i++)
        scanf("%d",b+i);
    m=minus(a,m,b,n);
    for(i=0;i<m-1;i++)
        printf("%d ",a[i]);
    printf("%d\n",a[i]);
    free(a);
    free(b);
    return 0;
}
温馨提示:内容为网友见解,仅供参考
无其他回答

给定两个集合A和B,判定A是否是B集合的子集,用C语言怎么写?
(2)输入B的元素个数,并输入各个元素;(3)看A重元素是否全部在B中,在就输出“A是B子集”;否则输出“A不是B子集”include <stdio.h> int main(){ int a[20] = { 0 }, b[30] = { 0 }, n, m, i, j,cnt = 0;\/\/输入集合a的元素个数(小于20)scanf_s("%d", &n);\/...

用C语言实现: 已知两个集合A,B(成员为整数),求两个集合的交集,并集...
printf("输入 %d 整数(空格隔开):\\n",n);for(i = 0; i < n; ++i) {p->next = (AGG *)malloc(sizeof(AGG));scanf("%d",&p->next->num);p = p->next;}p->next = head;return head;}void RiseSort(AGG *head) { \/\/ 上升排序AGG *p,...

c语言编程,输入两个数a,b (a<b)。输出从a到b的所有数字(包含本身),本...
include <stdio.h>int main(){ int a, b; int i; scanf ("%d%d", &a, &b); for (i = a; i <= b; ++i){ printf ("%d ", i); } printf ("\\n"); return 0;} 程序执行结果如下:

用C语言写一个很简单的程序,输入两个整数a,b,要求输入a-b的值,例如...
include<stdio.h> main(){ int a,b;printf("请输入A和B:");scanf("%d%d",&a&b);printf("a-b的差为:%d",a-b);}

给两个值a,b,输出a+b,a-b,a*b,a\/b,a%b的结果。c语言写段代码。
include <stdio.h> int main(void){ int a, b;scanf("%d,%d", &a,&b);printf("a+b=%d,a-b=%d,a*b=%d,a\/b=%d,a%b=%d",a+b,a-b,a*b,a\/b,a%b);return 0;}

用c语言编写一个程序,从键盘上输入两个字符给字符变量a,b,并输出变...
程序代码如下:include <stdio.h> \/\/编译预处理命令 int main(int argc, char *argv[]) \/\/主函数,字符的声明 { char a,b; \/\/定义字符a,b scanf("%c %c",&a,&b); \/\/输入字符a,b printf("%c %c\\n",a,b);\/\/打印字符a,b return 0; \/\/返回并且输出a,b } 扩展...

C语言 这是一个很简单的题目,给定2个整数A和B,请输出A+B的和。
include int main(){ int a,b;scanf("%d%d",&a,&b);printf("%d\\n",a+b);return 0;}

c 编写一个程序,要求输入两个数a和b,计算出a和b的和,差,积,并输出(也...
int main(void){int a, b;printf("请输入第一个整数\\n");scanf("%d", &a);printf("请输入第二个整数(注意!这个数不能为零)\\n");scanf("%d", &b);while (b==0){printf("你输入了零!请重新输入!\\n");scanf("%d", &b);if (b!=0) break;}printf("%d+%d=%d\\n", a...

c++ 编写一个程序,要求输入两个数a和b,计算出a和b的和,差,积,并输出...
int a,b,c,m,n; \/\/定义了一个int型的变量a,b,c,m,n printf("请输入a和b:"); \/\/ 输入a,b scanf("%d %d",&a,&b); \/\/ 输出a,b c=a+b; \/\/a与b的和 m=a-b; \/\/a与b的差 n=a*b; \/\/a与b的积 printf("a+b=%d\\n",c); \/\/输出a与b的和 printf("a-b=%d\\n",m);...

c语言 输入俩个正整数a,b 输出[a,b]中所有偶数之和
下面给出一个使用C语言实现求[a,b]中所有偶数之和的示例代码:```c include <stdio.h> int main() { int a, b, sum = 0, i;printf("请输入两个正整数a和b(a<=b):");scanf("%d %d", &a, &b);for (i = a; i <= b; i++) { if (i % 2 == 0) { sum += i...

相似回答