如何把一个矩阵转换为对称矩阵?有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?#define N 5void fun(int a[][N]){int i,j,t;for(i=0;i
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 07:08:55
如何把一个矩阵转换为对称矩阵?有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?#define N 5void fun(int a[][N]){int i,j,t;for(i=0;i
如何把一个矩阵转换为对称矩阵?
有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?
#define N 5
void fun(int a[][N])
{
int i,j,t;
for(i=0;i
如何把一个矩阵转换为对称矩阵?有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?#define N 5void fun(int a[][N]){int i,j,t;for(i=0;i
此段程序确实是求方阵的转置
如果把循环体中语句只保留
a[i][j] = a[j][i];
结果就是对角线下方的元素aij 等于 对应的 aji
也就是用对角线上方的元素 构造出 对称矩阵
其实在循环结束后打印出结果就看清楚了
对称矩阵是针对方阵(行列相等)而言,对任意的方阵A,A+A的转置 一定是对称的。
以下是任意矩阵转置的c语言代码 不知对你有没用。
#include
int main()
{ int i,j,k,m,n;
double temp,a[100][100],b[100][100];
printf("a[m][n]==>input m...
全部展开
对称矩阵是针对方阵(行列相等)而言,对任意的方阵A,A+A的转置 一定是对称的。
以下是任意矩阵转置的c语言代码 不知对你有没用。
#include
int main()
{ int i,j,k,m,n;
double temp,a[100][100],b[100][100];
printf("a[m][n]==>input m(行):\n");
scanf("%d",&m);
printf("a[m][n]==>input n(列):\n");
scanf("%d",&n);
printf("input a[%d][%d]:\n",m,n);
for(i=0;i
for(i=0;i
}
printf("转置后,result==>:\n");
for(i=0;i
printf("\n");
}
return 0;
}
收起