gpt4 book ai didi

C++:二维数组,如何找到列中差异最大的行?

转载 作者:行者123 更新时间:2023-11-30 02:04:15 25 4
gpt4 key购买 nike

我有一个具有可变数量的行和两列的二维数组,我应该找到其列中差异最大的行。更清楚地说:我得到了 n 天的最低和最高温度,我应该找到温度差异最大的那一天(如果两天有相同的差异,那么我应该给出只有第一个)。但是,我从来没有使用过多维数组,所以我不确定我是否可以做这样的事情:a[i][1]-a[i][0]? (a[i]是当天的指数,a[1]是当天最高气温,a[0]是最低气温)

我的这部分代码如下所示:

int difference (int n, float a[maxn][2]) {
float difference=a[0][1]-a[0][0];
int index=0;
for (int i=0; i<n; i++) {
if (a[i][1]-a[i][0]>difference) {
index=i;
a[i][1]-a[i][0]=difference; //HERE I get the error message: lvalue required as left operand of assignment
}
}
return index+1; //to get the day with the largest difference

如果我不把它作为一个赋值来做,但是我用==使值等于差,那么它说“声明没有效果”,所以我在想也许我不被允许做什么我正在努力。

最佳答案

  1. 您正在隐藏函数的名称 - 您可能希望其中一个差异是其他名称。
  2. = 仅适用于您尝试分配给左侧的变量。尝试:

    difference = a[i][1] - a[i][0];

关于C++:二维数组,如何找到列中差异最大的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10889111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com