gpt4 book ai didi

c++ - 无法在 C++ 中为二维数组输入值

转载 作者:太空宇宙 更新时间:2023-11-04 15:47:11 24 4
gpt4 key购买 nike

我正在为一个类(class)做作业,这是相当常规的。我以前用 Java 做过这件事,所以这对我来说并不是全新的,但是,我不完全确定这里出了什么问题。

基本上我需要为多个行/列输入信息,然后打印列的总和,所有这些都不是特别困难。然而,每次我打印数组的内容时,无论如何都是 1。

我不确定哪里出了问题,如果有人能告诉我原因,我将不胜感激。

哦,忘了说了,我用的是g++编译

#include <iostream>
#include <cstdio>
using namespace std;

const int ROWS = 4;
const int COLUMNS = 3;

void setupMatrix() {
// Setup matrix
double array[ROWS][COLUMNS];

// Needed? Wouldn't think so.
// for (int i = 0; i < COLUMNS; i++) {
// for (int j = 0; j < ROWS; j++) {
// array[i][j] = 0.0;
// }
// }

// Get array information from user
for (int i = 0; i < COLUMNS; i++) {
printf("Row %d\n", (i + 1));
for (int j = 0; j < ROWS; j++) {
printf("Column %d ", (j + 1));
cin >> array[i][j];
}
}

// Print array so I can see what's up first
for (int i = 0; i < COLUMNS; i++) {
// Row & column separation
printf("\n");
for (int j = 0; j < ROWS; j++) {
printf("%d ", array[j][i]);
}
}

}

int main () {
setupMatrix();

return 0;
}

最佳答案

数组的第一维是 ROWS,第二维是 COLUMNS,你弄错了循环顺序。还要在 printf 中打印双重使用格式说明符 %lf。我不明白为什么你决定在使用 cin 阅读时使用 printf,最好使用 cout 来保持一致性,因为这是典型的方式在 C++

中打印

关于c++ - 无法在 C++ 中为二维数组输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14686441/

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