如何通过输入填充 2D,然后在 C++ 中作为输出读回。这是我写的代码。我给错了output.I我是初学者

How to fill a 2D through input and then read back as output in a C++. Here is the code which I wrote. I gives wrong output.I am a beginner

#include <iostream>
#include<fstream>

using namespace std;

int main() {
    int a = 1;

    if (a == 1) {
        int a[1][1];
        for (int i = 0; i <= 1; i++) {
            for (int j = 0; j <= 1; j++) {

                cin >> a[i][j];
            }
        }
        cout << endl;

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

            for (int l = 0; l <= 1; l++) {
                cout << a[k][l] << "   ";
            }
            cout << endl;
        }


    }

    return 0;
}

在这个程序中,如果我们输入如下: 1个 2个 3个 4

它给出了输出: 1 3 3 1 它应该给出输出: 1 2 3 4 请帮助,我是初学者。 我在代码块中编码。

试试这个

int main()
{
int arr[2][2]; // declares a 2x2 array

    cout << "Enter integers : " << endl;
    for (int i = 0; i < 2; i++) {
        for (int j = 0; j < 2; j++) {
            cin >> arr[i][j]; //inserts at the index i and j in the array
        }
    }

    cout << "Display array : " << endl;
    for (int i = 0; i < 2; i++) {
        for (int j = 0; j < 2; j++) {
            cout << arr[i][j] << endl; /*displays the value at 
            index i and j in the array*/
        }
    }
}