如何把一个矩阵转换为对称矩阵?有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?#define N 5void fun(int a[][N]){int i,j,t;for(i=0;i

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/07 04:14:33
如何把一个矩阵转换为对称矩阵?有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?#define N 5void 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
如何把一个矩阵转换为对称矩阵?
有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?
#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(j=0;j scanf("%lf",&a[i][j]);
for(i=0;i for(j=0;j {b[j][i]=a[i][j];
}
printf("转置后,result==>:\n");
for(i=0;i{for(j=0;jprintf("%lf ",b[i][j]);
printf("\n");
}
return 0;
}

收起

如何把一个矩阵转换为对称矩阵?有这样一段程序,我总感觉是将矩阵转置,而不是变为对称矩阵,该如何修改呢?#define N 5void fun(int a[][N]){int i,j,t;for(i=0;i 设一个对称矩阵有可逆矩阵,证明它的逆矩阵也是对称矩阵 MATlab把一个矩阵转化成对角矩阵当然那个矩阵满足有n个线性无关的特征向量.然后如何把他转化为对角矩阵 正定矩阵为什么是对称矩阵? 半正定矩阵至少有一个特征值为零吗如题上述的半正定矩阵是对称的 matlab矩阵分块与把分块矩阵还原我有一个256*64的矩阵,我要把它分成16*16的矩阵,接着要把这个分好了块的矩阵又可以还原为原256*64的矩阵,请问matlab中该如何编写这个m文件~ Matlab如何将多个行矩阵合并为一个矩阵 如何判断一个矩阵是否为状态转移矩阵 怎样把一个矩阵表示为初等矩阵的乘积 对称矩阵 3阶实对称矩阵秩为2,为什么有一个特征值为0 矩阵证明题任何矩阵都可以写为一个对称矩阵和一个反对称矩阵相加是任意方阵。 matlab 如何把矩阵转化为方程 实对称矩阵和对称矩阵有什么区别吗? 工作中碰到一个矩阵分解问题:如何将N×N维的对称矩阵A分解成如下形式:A=B'CB?其中,B为Q×N维的矩阵,C为Q×Q维的对称矩阵,并且N>=Q.还要求矩阵C满秩,并且矩阵B的每一列中最多只有一个非零元 怎么证明一个n级矩阵可表示为一个上三角与对称矩阵和 在matlab中有一个上三角矩阵怎么将其对称位置为倒数 如何证可逆实矩阵可分解为一个正交矩阵与一个正定矩阵的乘积