实验八Gauss列主元素消去法
实验目的:
掌握Gauss列主元素消去法求解线性方程组的过程。
实验内容:
用Gauss消去法求解线性方程组
先来看一下不选主元的方法:
#include <stdio.h>
#include <math.h>
#define n 3
void main( )
{
float a[n][n+1]={{1,1,1,6},{0,4,-1,5},{2,-2,1,1}};
float temp,m,x[n];
int i,j,k,q,p;
for(i=0;i<n;i++)
{
//消元过程如下
for(k=i+1;k<n;k++)
{
m=a[k][i]/a[i][i];
printf("m=%f \n",m);
for(j=i+1;j<=n;j++)
{
a[k][j]-=m*a[i][j]
}
}
}
//回代过程如下
for(i=n-1;i>=0;i--)
{
x[i]=a[i][n];
for(j=i+1;j<n;j++)
x[i]=x[i]-a[i][j]*x[j];
x[i]/=a[i][i];
}
printf("\n x = \n");
for(i=0;i<3;i++)
printf(" %f\n",x[i]);
}
如果约化的主元素为0,接下来需要同学们编程实现列主元素消去法。
用Gauss列主元素消去法求解线性方程组