Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Can';我无法将我的数组数与另一组进行比较_C++_Arrays_Compare - Fatal编程技术网

C++ Can';我无法将我的数组数与另一组进行比较

C++ Can';我无法将我的数组数与另一组进行比较,c++,arrays,compare,C++,Arrays,Compare,我有两个数组,都包含5组随机数 首先,我显示第一个数组中所有数字的列表;然后我需要将第一个数组之外的任何数字添加到该列表中,并显示其中的每一个。要做到这一点,我使用另一个数组将唯一的值放入其中显示。 我已经有了一个显示当前数组的函数 以下是我遇到问题的代码: //SIZE is defined in the beginning as 5. printArray(array1); int i, j; //For each number in array1, compare each numb

我有两个数组,都包含5组随机数

首先,我显示第一个数组中所有数字的列表;然后我需要将第一个数组之外的任何数字添加到该列表中,并显示其中的每一个。要做到这一点,我使用另一个数组将唯一的值放入其中显示。 我已经有了一个显示当前数组的函数

以下是我遇到问题的代码:

//SIZE is defined in the beginning as 5.

printArray(array1);
 int i, j;
 //For each number in array1, compare each number in array2 to it.
 for(j=0; j<SIZE; j++)
 {
  for(i=0; i<SIZE; i++)
     {
    if(array2[j] != array1[i])//?
    {
     arraySum[j] = array2[j];
     std::cout << arraySum[j] << std::endl;
     break;
    }

     }
 }
 //printArray(arraySum);
//大小在开头定义为5。
打印阵列(阵列1);
int i,j;
//对于数组1中的每个数字,将数组2中的每个数字与它进行比较。

对于(j=0;j这听起来像是你在寻找的。例如:

std::set_difference(array2, array2 + SIZE, array1, array1 + SIZE,
    std::ostream_iterator<int>(std::cout, "\n"));

我相信这就是你想要的

#include <iostream>
int main(){
int i, j, count;
int SIZE = 5;
int array1[] = {1,3,4,5,7};
int array2[] = {0,9,14,5,18};
int arraySum[5];
//For each number in array1, compare each number in array2 to it.
for(j=0; j<SIZE; j++)
{
    count = 0;
    for(i=0; i<SIZE; i++)
    {
        if(array2[j] != array1[i])
        {
        count++;        
        }
    }
    if(count >= 5){
        arraySum[j] = array2[j];
        std::cout << arraySum[j] << std::endl;
    }
}
return 0;
}
#包括
int main(){
int i,j,计数;
int SIZE=5;
int-array1[]={1,3,4,5,7};
int array2[]={0,9,14,5,18};
int arraySum[5];
//对于数组1中的每个数字,将数组2中的每个数字与它进行比较。

对于(j=0;j该代码本身没有什么问题。
arraySum
不一定会被完全填充,这是你的问题吗?你能更清楚地解释你的问题吗?我知道,但我得到的结果不是我想要的。我想要一个算法,将array2中的一个数字与array1中的所有数字进行比较。如果它与其中任何一个,将该数字从array2分配给arraySum[j]。然后显示arraySum[j]。
#include <iostream>
int main(){
int i, j, count;
int SIZE = 5;
int array1[] = {1,3,4,5,7};
int array2[] = {0,9,14,5,18};
int arraySum[5];
//For each number in array1, compare each number in array2 to it.
for(j=0; j<SIZE; j++)
{
    count = 0;
    for(i=0; i<SIZE; i++)
    {
        if(array2[j] != array1[i])
        {
        count++;        
        }
    }
    if(count >= 5){
        arraySum[j] = array2[j];
        std::cout << arraySum[j] << std::endl;
    }
}
return 0;
}