减去数组中的每个元素并找到其中最大的元素
Substract every element in an array and find the largest among them
我的问题是我有一个包含生日的数组,我需要找到每个生日中最大的年龄差异。
我正在考虑每年减去并将差异存储在一个数组中,并在该临时数组中找到最大的差异。
#include <iostream>
using namespace std;
int main()
{
int t[5] = {1999,2001,1996,1998,1999};
int temp[10] = {0};
for (int i=0; i<5;i++)
{
for (int j=i+1; j<5; j++)
{
if(t[i] > t[j])
{
temp[i] = t[i] - t[j];
}
else if (t[i] < t[j])
{
temp[i] = t[j] - t[i];
}
else
{
temp[i] = 0;
}
}
}
for (int i=0; i<10;i++)
cout << temp[i] <<" ";
return 0;
}
当我尝试这个时,我没有得到每个年龄差异,该程序仅适用于第一个元素。
我对这部分有困难,当我在临时数组中有正确的值时,我可以设法找到最大的元素。
您正在将此temp
数组的位置i
存储计算出的差值。i
的值仅在内部j
循环完成执行后更新。这会导致值被覆盖。尝试类似操作:
int k = 0;
for (int i=0; i<5;i++)
{
for (int j=i+1; j<5; j++)
{
if(t[i] > t[j])
{
temp[k] = t[i] - t[j];
}
else if (t[i] < t[j])
{
temp[k] = t[j] - t[i];
}
else
{
temp[k] = 0;
}
k++;
}
}
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 使用strcpy将char数组的元素复制到另一个数组
- 如何将元素添加到数组的线程安全函数?
- cpp二进制搜索问题,计算给定数组中输入元素的出现次数
- 输出没有重复元素的动态数组(收缩数组)C++
- 数组中最大的非重复元素
- 数组元素打印的递归方法
- 对字符数组中的元素执行逐位操作
- 缓存std::数组的选定元素,并在c++中自动保持其一致性
- 如何计算数组中元素的位数?(不是数组的长度),并计算其数字的总和
- 通过交换元素使数组相同
- 按平均值替换数组中的元素
- 打印矢量数组中的所有元素
- 如何将字节数组元素替换为修改的十六进制 ASCII 符号?
- 如何为 c++ 的不同变量类型的结构元素创建动态数组?
- 如何将元素从向量转移到新数组?
- 如何在向量数组中插入元素?
- 为什么 2 个相同数组的元素彼此相等
- C++ 中的二维整数数组,每行中的元素数量不均匀