使用列主元消元法解方程组c语言代码.docx

使用列主元消元法解方程组c语言代码.docx

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用列主元消元法解方程组c语言代码

使用列主元消元法解方程组 c语言代码 # includestdio.h # includemath.h # define N 3 main(){ int i,j,k,h,s,m,n,z; float max(float *y); float A[N][N+1],B[N],ma,t,M[N]={0},X; float x[N]; /*输入系数矩阵 */ for(i=0;iN;i++) for(j=0;jN+1;j++) scanf(%f,A[i][j]); printf(向命令窗口输入的曾广矩阵是:\n); for(i=0;iN;i++) { for(j=0;jN+1;j++) printf(%2.1f ,A[i][j]); printf(\n); } /*正消过程*/ for (i=0;iN-1;i++) { /*找出每行最大的值 */ for (j=i;jN;j++) B[j-i]=A[j][i]; ma=max(B); for (s=0;sN;s++) B[s]=0; /* 交换最大值行和当前行 */ if(ma!=0){ for (k=i;kN;k++) if (A[i][i]!=ma A[k][i]==ma ma!=0) { for (h=0;hN+1;h++) { t=A[i][h]; A[i][h]=A[k][h]; A[k][h]=t; } } } else { printf(A是非奇异矩阵!\n); break; } /* 消去过程 */ for (m=i+1;mN;m++) M[m]=A[m][i]/A[i][i]; for (n=i+1;nN;n++) { for (z=0;zN+1;z++) A[n][z]=A[n][z]-M[n]*A[i][z]; } for (m=0;mN;m++) M[m]=0; } /*输出三角矩阵 */ printf(通过高斯列主元消去法化成的上三角曾广矩阵是:\n); for(i=0;iN;i++) { for(j=0;jN+1;j++) printf(%2.1f ,A[i][j]); printf(\n); } /* 回带过程 */ x[N-1]=A[N-1][N]/A[N-1][N-1]; for(i=N-2;i0 || i==0;i--) { for(j=N-1;ji;j--) X=X+A[i][j]*x[j]; x[i]=(A[i][N]-X)/A[i][i]; X=0; } /* 将方程的解输出 */ printf(该方程组的解依次为:\n); for(i=0;iN;i++){ printf(x[%d]=%2.1f ,i+1,x[i]); } } /* 计算最大值函数 */ float max(float *y){ int w; float max=y[0]; for (w=0;wN;w++) if (fabs(y[w])fabs(max)) max=y[w]; return max; }

文档评论(0)

ktj823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档