前提是这个方程桥好友唯一解
#include<iostream>
#include<cmath>
using namespace std;
const int maxn=100;
typedef double Matrix[maxn][maxn] ;
// 高斯消元 test
void gauss_elimination(Matrix A,int n)
{
int r;
for(int i=0;i<n;i++)
{
r=i;
for(int j=i+1;j<n;j++)
if(fabs(A[j][i])>fabs(A[r][i])) r=j;
if(r!=i)
for(int j=0;j<=n;j++)
swap(A[r][j],A[i][j]);
for(int k=i+1;k<n;k++)
{
double f=A[k][i]/A[i][i];
for(int j=i;j<=n;j++)
A[k][j]-=f*A[i][j];
}
}
for(int i=n-1;i>=0;i--)
{
for(int j=i+1;j<n;j++)
{
A[i][n]-=A[j][n]*A[i][j];
}
A[i][n]/=A[i][i];
}
}
int main()
{
Matrix A;
int n;
cin>>n;
for(int i=0;i<n;i++)
for(int j=0;j<n+1;j++)
{
cin>>A[i][j];
}
gauss_elimination(A,n);
for(int i=0;i<n;i++)
{
cout<<A[i][n]<<endl;
}
}