高斯消元法的c语言编程,列主元高斯消元法的C语言编程

列主元高斯消元法的C语言编程

列主元高斯消元法

基本思想:用高斯消元法求解线性方程组时,为避免小的主元,在进行第k步消元前,应该在第k列(k)元素aik(i k,(k)(k)例如|aikk| max|aik|,再把第ik个方程与第k,n)中找出第一个出现的绝对值最大者,

k≤i≤n

个方程进行交换,使ai(kk)成为主元。我们称这个过程为选主元。由于只在第k列元素中选主元,通常也称k

为按列选主元。

列主元高斯消元法的C语言编程

列主元高斯消元法的C语言程序代码如下:

#include

#include

#include

#define N 4

void Gause_pivot(int n,double A[N][N+1],double x[])

{

//高斯消元

int i,j,k;

for(k=1;k<=n-1;k++)

{

//选主元

int ii,jj,kk,row;

double max,temp;

ii=1;kk=k;

max=A[ii-1+(kk-1)][kk-1];

for(jj=ii+1;jj<=n;jj++)

{

if (fabs(A[jj-1+(kk-1)][kk-1])>fabs(max))

{

max=A[jj-1+(kk-1)][kk-1];

row=jj+(kk-1);

}

}

for(ii=1;ii<=n+1;ii++)

{

temp=A[kk-1][ii-1];

A[kk-1][ii-1]=A[row-1][ii-1];

A[row-1][ii-1]=temp;

}

for(i=k+1;i<=n;i++)

for(j=k+1;j<=n+1;j++)

A[i-1][j-1]-=A[k-1][j-1]*A[i-1][k-1]/A[k-1][k-1];

}

//回代求解

x[n-1]=A[n-1][n]/A[n-1][n-1];

for(k=n-1;k>=1;k--)

{

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值