C 语言范例 - 矩阵转换
矩阵转换
/** * file: main.c * author: 简单教程(www.twle.cn) */ #include <stdio.h> int main() { int a[10][10], matrix[10][10], r, c, i, j; printf("输入矩阵的行与列: "); scanf("%d %d", &r, &c); // 存储矩阵的元素 printf("\n输入矩阵元素:\n"); for(i=0; i<r; ++i) for(j=0; j<c; ++j) { printf("输入元素 a%d%d: ",i+1, j+1); scanf("%d", &a[i][j]); } // 显示矩阵 a[][] */ printf("\n输入矩阵: \n"); for(i=0; i<r; ++i) for(j=0; j<c; ++j) { printf("%d ", a[i][j]); if (j == c-1) printf("\n\n"); } // 转换 for(i=0; i<r; ++i) for(j=0; j<c; ++j) { matrix[j][i] = a[i][j]; } // 显示转换后的矩阵 a printf("\n转换后矩阵:\n"); for(i=0; i<c; ++i) for(j=0; j<r; ++j) { printf("%d ",matrix[i][j]); if(j==r-1) printf("\n\n"); } printf("\n"); return 0; }
编译运行范例,输出结果如下
# luojianguo @ lie in ~/Downloads/curl_mail/c [23:45:36] $ gcc main.c && ./a.out 输入矩阵的行与列: 3 3 输入矩阵元素: 输入元素 a11: 1 输入元素 a12: 3 输入元素 a13: 5 输入元素 a21: 7 输入元素 a22: 9 输入元素 a23: 13 输入元素 a31: 17 输入元素 a32: 19 输入元素 a33: 23 输入矩阵: 1 3 5 7 9 13 17 19 23 转换后矩阵: 1 7 17 3 9 19 5 13 23