mdsk.net
当前位置:首页 >> 矩阵转置代码 >>

矩阵转置代码

//Transpose #include #define MAX 20 int m,n; void transpose(double a[][MAX],double b[][MAX]) { int i,j; for(i=0;i

用两个for语句,比如:for(int i;i

#include <stdio.h> int main() { int a[3][5]={ {1,2,3,4,5}, {11,12,13,14,15}, {21,22,23,24,25} }; int b[5][3]; int i,j; for( i=0;i<3;i++) for( j=0;j<5;j++ ) b[j][i]=a[i][j] ; //很简单,就这句就解决了 for( i=0;i<5;i++ ) { for(j=0;j<3;j++ ) printf("%d ", b[i][j] ); printf("\n"); } return 0; }

思路:定了两个二维数组分别存储转置前后的矩阵,接着for循环依次转置即可.//参考代码#include<stdio.h> int main() { int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}},b[4][3]; int i,j; for(i=0;i<3;i++) for(j=0;j<4;j++) b[j][i]=a[i][j]; for(i=0;i<4;i++) { for(j=0;j

其实矩阵的转置就是按行输入,然后按列输出.程序挺简单的.#include <stdio.h>#include <string.h> int main() { int a[5][5]; int i, j; printf("please enter 4*4 matrix:\n"); for(i=0; i<4; i++)///按行输入 { for(j=0; j<4; j++) { scanf("%d", &a[i][j]); } } for(j=0; j<4; j++)///按列输出 { for(i=0; i<4; i++) { printf("%-5d", a[i][j]); } printf("\n"); } }

//Transpose#include <stdio.h>#define MAX 20 int m,n; void transpose(double a[][MAX],double b[][MAX]) { int i,j; for(i=0;i<MAX;i++) for(j=0;j<MAX;j++) b[i][j]=a[j][i]; } void main() { int i,j; double a[MAX][MAX],b[MAX][MAX]; puts("Please input the

#include usingnamespacestd;voidzhuangzhi(inta[3][3]) {intm,n,i;for(m=0;mfor(i=0;i{if(m!=1||i!=0) {n=a[i][m];a[i][m]=a[m][i];a[m][i]=n;} } } intmain() { inta[3][3];inti,j;for(i=0;ifor(j=0;jcin>>a[i][j];zhuangzhi(a);for(i=0;i{ for(j=0;jcoutcout} return0;} cout<<"处理后

其实也就是数组的行列互换而已 main() { int i,j; //循环变量 int a[m][n];b[n][m] 数组,b是a的转置 for(i=1;i<=m;i++) for(j=1;j<=n;j++) scanf("%d",&a[i][j]) //输入数组a,每输一个就会车确认 for(i=1;i<=m;i++) for(j=1;j<=n;j++) b[j][i]=a[i]j]; //转置 for(i=1;i<=m;i++) {for(j=1;j<=n;j++) printf("%d\t",b[j][i]); //输出数组b printf("\n"); //输出一行就换行哈! } }//如此简单

#include using namespace std; void main() { int a[3][3],i,j,temp; couta[i][j]; } } for(i=0;i

#include "StdAfx.h"#include<stdio.h>#include<stdlib.h>#include<string.h>#define length 3//指定长度/*装置矩阵*/ void transposition(int Array[length][length]) { int ArrayTemp[length][length]; for (int i = 0;i < length;i++) { for (int j = 0;j < length;j++) {

mtwm.net | qwrx.net | zxtw.net | xmlt.net | tfsf.net | 网站首页 | 网站地图
All rights reserved Powered by www.mdsk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com