📄 高斯消去法.c
字号:
#include<stdio.h>
#include<math.h>
main()
{float a[10][10],b[10],m[10][10],x[10],sum;
int i,j,k,n;
printf("the top exp:");
scanf("%d",&n);
printf("\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%f",&a[j]);
for(i=0;i<n;i++)
scanf("%f",&b);
for(k=0;k<n-1;k++)
{if(a[k][k]==0)
printf("error");
else for(i=k+1;i<n;i++)
{m[k]=a[k]/a[k][k];
a[k]=m[k];
b=b-m[k]*b[k];
for(j=k+1;j<n;j++)
a[j]=a[j]-m[k]*a[k][j];
}}
if(a[n-1][n-1]==0)
printf("error");
else x[n-1]=b[n-1]/a[n-1][n-1];
b[n-1]=x[n-1];
for(i=n-2;i>=0;i--)
{sum=0;
for(j=i+1;j<n;j++)
{sum+=a[j]*x[j];}
x=(b-sum)/a;
b=x;
}
for(i=0;i<n;i++)
printf("%f\n",x);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -