!! 希望你们的健康状况良好.. 在我这边,我正在尝试编写存储最大价值的代码。
实际上我首先在array1和array2之间找到Max Number,然后将它存储在array3中.. 是的,这很简单,但结果不正确.. 在浪费时间并使用调试器之后,我仍然无法跟踪问题。
我希望你们会帮助我... 谢谢你的考虑..
int max_hit(int *array1, int *array2, int size)
{
for(int i = 0; i < size; i++)
{
if(*(array1+i) > *(array2+i))
{
return *(array1+i);
}
else if(*(array2+i) > *(array1+i))
{
return *(array2+i);
}
}
}
void fill_third(int *array1, int *array2, int *array3, int size)
{
for(int j = 0; j < size; j++)
{
*(array3+j) = max_hit(array1, array2, size);
}
}
答案 0 :(得分:0)
如果我正确理解了问题,您需要比较每个索引的两个数组中的元素,并选择较大的数组到第三个数组。在这种情况下,不需要max_hit函数,只需为每个索引使用您最喜欢的max函数。 例如:
void fill_third(int *array1, int *array2, int *array3, int size)
{
for (int i = 0; i < size; ++i)
{
array3[i] = std::max(array1[i], array2[i]);
}
}
当前表单中的max_hit函数仅选择第一个索引处的较大元素,其中两个数组的元素不相等。在fill_third中使用它将使用此数字填充array3的所有元素。