c++ - 我的 4 x 4 矩阵没有打印出 C++

标签 c++ matrix

<分区>

所以我不确定我做错了什么。我知道这将是一些小而简单的事情,但我确实需要一点帮助。大多数情况下它只打印出每行的第一个数字,之后它只打印出 0。可能只是因为我整天盯着电脑,压力导致我的大脑无法正常工作,但任何帮助都会很棒。我知道大多数人使用 i 和 j,但我喜欢用 r 代表行,用 c 代表列。

#include <iostream>

using namespace std;

int main() {

    int m1[4][4] = {(1, 2, 3, 4), (4, 3, 2, 1), (1, 2, 3, 4), (4, 3, 2, 1)};
    int m2[4][4] = {(0, 0, 0, 0), (1, 1, 1, 1), (2, 2, 2, 2), (3, 3, 3, 3)};
    int m3[4][4] = {(5, 8, 2, 5), (4, 7, 1, 4), (6, 9, 3, 6), (4, 5, 6, 4)};
    int m4[4][4] = {(1, 3, 7, 9), (2, 6, 8, 4), (7, 8, 9, 6), (1, 2, 3, 4)};

    //print matrix 1
    cout << "Matrix 1: " << endl;
    for (int r = 0; r < 4; r++) {
        for (int c = 0; c < 4; c++) {
            cout << m1[r][c] << " ";
        }
        cout << endl;
    }
    cout << endl << endl;


    //print natrix 2
    cout << "Matrix 2: " << endl;
    for (int r = 0; r < 4; r++) {
        for (int c = 0; c < 4; c++) {
            cout << m2[r][c] << " ";
        }
        cout << endl;
    }
    cout << endl << endl;

    //print matrix 3
    cout << "Matrix 3: " << endl;
    for (int r = 0; r < 4; r++) {
        for (int c = 0; c < 4; c++) {
            cout << m3[r][c] << " ";
        }
        cout << endl;
    }
    cout << endl << endl;

    //print matrix 4
    cout << "Matrix 4: " << endl;
    for (int r = 0; r < 4; r++) {
        for (int c = 0; c < 4; c++) {
            cout << m4[r][c] << " ";
        }
        cout << endl;
    }
    cout << endl << endl;

    cout << endl << endl;
    system("pause");
}

最佳答案

使用大括号 {} 代替圆括号 ()。使用括号,您只需使用逗号分隔的表达式计算最右边的数字(因此仅初始化第一行),其余元素为 default initialized0。你要的叫list initialization .而不是:

int m1[4][4] = { (1, 2, 3, 4), (4, 3, 2, 1), (1, 2, 3, 4), (4, 3, 2, 1) };

使用:

int m1[4][4] = { { 1, 2, 3, 4 }, { 4, 3, 2, 1 }, { 1, 2, 3, 4 }, { 4, 3, 2, 1 } };

并对剩余的矩阵重复。

关于c++ - 我的 4 x 4 矩阵没有打印出 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47381470/

相关文章:

C++如何获取wstring的首字母

c++ - 如何实现内部实现依赖于模板参数的类?

c - 使用 b^n 次方求矩阵的逆

numpy - 高效计算帽子矩阵: inv(X'WX )'X' 的对角线

r - R中余弦相似矩阵的前N个值

algorithm - 最小面积封闭矩形?

c++ - 重载多个运算符

c++ - 在 xcode 中包含 cmath 时出现错误 : '::acos' has not been declared, 等

c++ - typedef 共享指针的最佳策略是什么?

c++ - 如何动态分配矩阵?