#include <stdio.h>

void transpose(int (*matrix)[10], int n);

int main() { int matrix[10][10] = {{1, 3, 5, 7, 9, 6, 5, 4, 3, 2}, {2, 4, 6, 8, 0, 7, 6, 5, 4, 3}, {3, 5, 7, 9, 1, 8, 7, 6, 5, 4}, {4, 6, 8, 0, 2, 9, 8, 7, 6, 5}, {5, 7, 9, 1, 3, 0, 9, 8, 7, 6}, {6, 8, 0, 2, 4, 1, 0, 9, 8, 7}, {7, 9, 1, 3, 5, 2, 1, 0, 9, 8}, {8, 0, 2, 4, 6, 3, 2, 1, 0, 9}, {9, 1, 3, 5, 7, 4, 3, 2, 1, 0}, {0, 2, 4, 6, 8, 5, 4, 3, 2, 1}}; int n; scanf("%d", &n); transpose(matrix, n); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { printf("%d ", matrix[i][j]); } printf("\n"); } return 0; }

void transpose(int (*matrix)[10], int n) { for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { if (i < j) { // 只处理上三角矩阵 int temp = matrix[i][j]; matrix[i][j] = matrix[j][i]; matrix[j][i] = temp; } } }

c语言程序设计编写一个函数 void transposeint matrix10 int n实现对一个矩阵的前n行和前n列转置。先在主函数中初始化如下矩阵然后输入nn10调用transpose函数前n行n列的转置。1 3 5 7 9 6 5 4 3 22 4 6 8 0 7 6 5 4 33 5 7 9 1 8 7 6 5 44 6 8 0 2 9 8 7 6 55 7 9 1 3 0 9 8 7

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

免费AI点我,无需注册和登录