yhkn.net
当前位置:首页 >> C语言做3 3转置矩阵 >>

C语言做3 3转置矩阵

for(int i=0;i<3;i++) for(int j=0;j<i;j++) a[i][j] = a[i][j] + a[j][i] - (a[j][i] = a[i][j]);

#include<stdio.h> int main() { int a1,b1; int a[3][3]; int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); printf("矩阵为\n"); for(i=0;i<3;i++) for(j=0;j<3;j++) { printf("%d ",a[i][j]); if(j==2) printf("\n"); } printf("\n"); for(i=0;i<2;i++) for(j=1;j<

行列互换就可以了.main( ) { int i=0,,j=0; int a[3][3]={1,2,3,4,5,6,7,8,9}; int b[3][3]; printf("矩阵转置前\n"); for(i=0;i for(j=0;)j { printf("%2d",a[i][j]); printf("\n); } printf("矩阵转置前\n"); for(i=0;i { for(j=0;)j { b[j][i]= a[i][j]; printf("%2d",b[i][j]); printf("\n); } }

#include int main() { int m,n; int i,j; int ** p; while(1) { printf("input m and n:"); if(scanf("%d%d",&m,&n)==eof) break; p=(int**)malloc(m*sizeof(int*)); for(i=0;i { *(p+i)=(int*)malloc(n*sizeof(int)); for(j=0;j { scanf("%d",*(p+i)+j); } } for(j=0;j { for(i=0;

方型矩阵转置比较简单,对上三角或下三角做交换即可.#include "stdio.h"void transpose(int (*matrix)[3]){ int temp; int i, j; for(i=1;i 评论0 0 0

其实也就是数组的行列互换而已 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<stdio.h>void rotate(int p[3][3]){ int b[3][3]; int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) b[i][j]=p[j][i]; printf("\nAfter Rotate:\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%6d",b[i][j]); printf("\n"); }}int main(){ int i,j; int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};

#include <stdio.h>#define MAX 20int 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 dimensions of the

转置就是把00和22交换,01和12,10和21交换.太久没编C了,试着编一下.现在全是汇编思维#include main(){int i,j,t;int a[3][3];for(i=0;i 评论0 0 0

#include&lt;stdio.h&gt;main(){ int a[3][3],i,j,temp; for(i=0;i&lt;3;i++) for(j=0;j&lt;3;j++) scanf("%4d",&amp;a[i][j]); for(i=0;i&lt;3;i++) for(j=0;j&lt;i;j++){ temp=a[j][i]; //你的问题在这里,数据交换需要用一个中间变量来中转. a[j][i]=a[i][j]; a[i][j]=temp; } for(i=0;i&lt;3;i++) { printf("\n"); for(j=0;j&lt;3;j++) printf("%d ",a[i][j]); }}

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