1 / 3
文档名称:

求任意可逆矩阵的逆矩阵.doc

格式:doc   大小:15KB   页数:3页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

求任意可逆矩阵的逆矩阵.doc

上传人:taoapp 2021/11/27 文件大小:15 KB

下载得到文件列表

求任意可逆矩阵的逆矩阵.doc

相关文档

文档介绍

文档介绍:#include""
#include""
main()
{
{
printf("\t程序功能:输出任意阶可逆矩阵的逆矩阵(原则上是10阶以下)\n");
float a[10][10],b[10][10],w,e,c;
int i,j,k,m,h,t,n=0,g,s,qw=0;
printf("输入大于1的n阶矩阵,n=");
scanf("%d",&s);
while(s<2)
{
printf("输入错误,输入大于1的n阶矩阵!,n=");
scanf("%d",&s);
}
for(i=0;i<s;i++)
{
for(j=0;j<s;j++)
{
if(i==j)
b[i][j]=1;
else
b[i][j]=0;
}
}
printf("输入%d阶矩阵的%d个元素(输一个元素按一个回车键)\n",s,s*s);
for(i=0;i<s;i++)/*输入数据*/
{
for (j=0;j<s;j++)
{
qw++;
printf("\t输入第%d个元素: ",qw);
scanf("%f",&a[i][j]);
}
}
printf("原%d阶矩阵为\n",s);
for(i=0;i<s;i++)
{
for(j=0;j<s;j++)
{
printf("%",b[i][j]);
n++;
if(n%s==0)
printf("\n");
}
}
for(i=0;i<s;i++)/* 使对角线上的元素为1,,同时使对应行的元素保持同步,并使同一列的元素为零*/
{
if(a[i][i]==0)/*不使主对角线上的元素为0 */
{
for(t=i+1;t<s;t++)
{
if(a[t][i]!=0)
{
c=a[i][i];a[i][i]=a[t][i];a[t][i]=c;
c=b[i][i];b[i][i]=b[t][i];b[t][i]=c;
for(g=i+1;g<s;g++)
{
c=a[i][g];a[i][g]=a[t][g];a[t][g]=c;
c=b[i][g];b[i][g]=b[t][g];b[t][g]=c;
}
}
}
if(a[i][i]==0)
{
printf("不存在逆矩阵!");
return 0;
}
}
w=a[i][i];/*保存变量*/
a[i][i]=a[i][i]*([i][i]);
for(m=0;m<s;m++)/*使同一行的元素同步*/
{