如何用c语言求两数组之差

就是用c语言求两数组差集,比如,a={1,2,3,4},b={1,3,5,6},则a与b的差集为c=a-b={2,4}.我迫切希望哪位仁兄能帮我一把,本人感激不尽!... 就是用c语言求两数组差集,比如,a={1,2,3,4},b={1,3,5,6},则a与b的差集为c=a-b={2,4}.我迫切希望哪位仁兄能帮我一把,本人感激不尽! 展开
 我来答
tattackor
推荐于2017-09-15 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:893万
展开全部
  1. 算法很简单,一次循环,分别相减。

  2. 代码如下:

    #include <stdio.h>
    #define SIZE 4
    int a[SIZE] = {1, 2, 3, 4};
    int b[SIZE] = {1, 3, 5, 6};
    int i;
    int main(){
        for(i=0;i<SIZE;i++){
             printf("a(%d) - b(%d) = %d \n",i,i,a[i]-b[i]);
        }
        return 0;
    }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
飘渺世间天
推荐于2017-10-02 · TA获得超过2650个赞
知道大有可为答主
回答量:843
采纳率:0%
帮助的人:1108万
展开全部
#include <stdio.h>

#define SIZE 4

int main()
{
int a[SIZE] = {1, 2, 3, 4};
int b[SIZE] = {1, 3, 5, 6};
int c[SIZE];
int i, j, *p;

for(i = 0, j = 0; i < SIZE; ++i)
{
for(p = b; p != b + SIZE; ++p)
{
if(a[i] == *p)break;
}

if(p == b + SIZE)
c[j++] = a[i];
}

printf("a - b = { ");
for(i = 0; i < j; ++i)
{
printf("%d ", c[i]);
}
printf("}");
}

#include <iostream>
#include <algorithm>
using namespace std;

int main()
{
const int size = 4;
int a[size] = {1, 2, 3, 4};
int b[size] = {1, 3, 5, 6};
int c[size];

int* p1 = set_difference(a, a + size, b, b + size, c);

for(int* p2 = c; p2 != p1; ++p2)
{
cout << *p2 << ' ';
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式