gpt4 book ai didi

c - 赋值,关于二维数组

转载 作者:行者123 更新时间:2023-11-30 16:48:08 30 4
gpt4 key购买 nike

我需要一些帮助来解决问题。

我有这个文本文件:

我将文本内容输入到字符串二维数组中,并将其转换为整数二维数组。当我转换为 int 数组时,nan 被替换为零。现在,我继续查找二维数组中每行的最大值和最小值,并找到两者的平均值,我成功地实现了这一点。我的问题是我想将每行找到的平均值分配为零。我尝试使用两个 for 循环,但它用第一行的平均值替换所有零。任何人都可以帮助我吗?

我的代码:

int min = 200;

int main() {

fstream imagefile;
imagefile.open("Text.txt");

if (imagefile.fail()) { // checking for errors in file
cerr << "Error opening file" << endl;
exit(1);

std::string data[3][11];
int integer[3][11];
for (int k = 0; k < 3; k++) {

for (int i = 0; i < 11; i++) {
imagefile >> data[k][i]; // read from file

}
}

cin.get();

for (int k = 0; k < 3; k++) {

for (int i = 0; i < 11; i++)
{
integer[k][i] = atoi(data[k][i].c_str()); // converts string to int
}
}
cin.get();

for (int k = 0; k < 3; k++) { //k is the row and i is the column

for (int i = 0; i < 11; i++) {
cout << integer[k][i] << " ";

}
cout << endl;
}

int row, col;
for (row = 0; row < 3; row++) { //k is the row and i is the column

max = integer[row][0];
min = integer[row][0];

for (col = 0; col < 11; col++) {
if (integer[row][col] > max) { max = integer[row][col]; }
if ((integer[row][col] < min) && (integer[row][col] != 0)) { min = integer[row][col]; }
//if (integer[row][col] == 0) { avg == integer[row][col]; }

sum = max + min;
avg = sum / 2;
}
for (int k = 0; k < integer[k][i]; k++) { //k is the row and i is the column
for (int i = 0; i < 11; i++) {
if (integer[k][i] == 0) {

integer[k][i] = avg;

}
cout << integer[k][i] << " ";

}
cout << endl;
}

cout << max << " ";
cout << min << " ";
cout << avg << " " << endl;
}

imagefile.close();
system("pause");
return 0;
}

最佳答案

您提供的代码存在多个问题。这一行:

    imagefile >> data[k][i];

错误 C2679:二进制“>>”:找不到采用“std::string”类型右侧操作数的运算符(或者没有可接受的转换)

和:

    for (int k = 0; k < integer[k][i]; k++) 

错误 C2065:“i”:未声明的标识符 (78)

尝试发布实际代码。

关于c - 赋值,关于二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43098398/

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