输出是打印出要交换的两行矩阵,但我的代码只是打印出您输入的第一个矩阵

时间:2019-01-14 09:24:28

标签: c++

输出是打印出交换您输入的两行的矩阵,但是我的代码只是打印出您输入的第一个矩阵

它没有显示任何错误,所以我真的不知道该怎么办 这是我的代码:

#include <iostream>
using namespace std;

int NhapMang(int A[100][100], int& n)
{
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            cout << "nhap A[" << i << "][" << j << "]: ";
            cin >> A[i][j];
        }
    }
    return 0;
}

int XuatMang(int A[100][100], int n)
{
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            cout << A[i][j] << " ";
        }
        cout << endl;
    }
    return 0;
}

int HoanDoi(int a, int b)
{
    int tam = a;
    a       = b;
    b       = tam;
    return 0;
}

int HoanDoi2Dong(int A[100][100], int n, int o, int p)
{
    for (int j = 0; j < n; j++)
    {
        HoanDoi(A[o][j], A[p][j]);
    }
    cout << endl;
    return 0;
}

int main()
{
    int A[100][100], n, o, p;

    cout << "Moi nhap n: ";
    cin >> n;

    NhapMang(A, n);
    XuatMang(A, n);

    cout << "\nNhap vao 2 dong can hoan doi: ";
    cin >> o >> p;
    cout << "Ma tran sau khi hoan doi: ";

    HoanDoi2Dong(A, n, o, p);
    XuatMang(A, n);

    return 0;

}

输出: 您输入n: 例如:3

1 2 3 
4 5 6
7 8 9

例如,我想交换第一行和第二行,所以我输入1 2 所以我期望矩阵:​​

4 5 6 
1 2 3
7 8 9

但实际结果是第一个矩阵:

1 2 3
4 5 6
7 8 9

0 个答案:

没有答案