将n行n列的矩阵a转置为a‘ c语言

如题所述

第1个回答  2012-05-19
#include<stdio.h>
#define n 3
void main()
{void fact(int arr[n][n]);
int a[n][n],i,j;
printf("请输入一个%d*%d的二维整型数组\n",n,n);
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
printf("转置前:\n");
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
printf("%d ",a[i][j]);
printf("\n");
}
fact(a);
printf("转置后:\n");
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
printf("%d ",a[i][j]);
printf("\n");
}
}

void fact(int arr[n][n])
{int i,j,t;
for(i=0;i<n;i++)
{for(j=i+1;j<n;j++)
{t=arr[i][j];
arr[i][j]=arr[j][i];
arr[j][i]=t;}
}
}
第2个回答  2012-05-20
///一楼 改
void trans(double *m,int n){
int i,j,t;
for(i=0;i<n;i++)
for(j=i;j<n;j++){
t=a[i][j];a[i][j]=a[j][i];a[j][i]=t;
}

}
第3个回答  2012-05-19
void trans(double *m,int n){
int i,j,t;
for(i=0;i<n;i++)
for(j=0;j<n;j++){
t=a[i][j];a[i][j]=a[j][i];a[j][i]=t;
}

}本回答被提问者和网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网