#include #include #include using namespace std;

int main() { int n; cout << "请输入行数n:"; cin >> n;

// 动态内存分配
int **matrix = new int*[n];
for (int i = 0; i < n; i++) {
    matrix[i] = new int[5];
}

// 用户输入或随机生成矩阵元素
srand(time(NULL));
cout << "请输入矩阵元素或输入0随机生成:\n";
for (int i = 0; i < n; i++) {
    for (int j = 0; j < 5; j++) {
        int temp;
        cin >> temp;
        if (temp == 0) {
            matrix[i][j] = rand() % 100;
        } else {
            matrix[i][j] = temp;
        }
    }
}

// 输出原矩阵
cout << "原矩阵:\n";
for (int i = 0; i < n; i++) {
    for (int j = 0; j < 5; j++) {
        cout << matrix[i][j] << " ";
    }
    cout << endl;
}

// 转置矩阵
int **transpose = new int*[5];
for (int i = 0; i < 5; i++) {
    transpose[i] = new int[n];
}
for (int i = 0; i < n; i++) {
    for (int j = 0; j < 5; j++) {
        transpose[j][i] = matrix[i][j];
    }
}

// 输出转置矩阵
cout << "转置矩阵:\n";
for (int i = 0; i < 5; i++) {
    for (int j = 0; j < n; j++) {
        cout << transpose[i][j] << " ";
    }
    cout << endl;
}

// 释放内存
for (int i = 0; i < n; i++) {
    delete[] matrix[i];
}
delete[] matrix;
for (int i = 0; i < 5; i++) {
    delete[] transpose[i];
}
delete[] transpose;

return 0;

}

标签: 科技


原文地址: https://cveoy.top/t/topic/buBL 著作权归作者所有。请勿转载和采集!