列主元高斯消元法_C语言
本文是用C语言写的列主元高斯消元法,在写之前也是百度了一下 看了好多感觉不是很喜欢,就根据自己的想法写了这个。
不知有没有什么漏洞和瑕疵,望大家指正。
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main()
{/*--获取并显示增广矩阵--*/int n;printf(" Please enter the dimension of coefficent matrix n:\n");scanf("%d",&n);printf("the dimension is :%d\n",n);printf("Please enter the augmented matrix A=[a|b]:\n");double A[n][n+1],x[n]; int i,j;for(i=0;i<n;i++)for(j=0;j<=n;j++)scanf("%lf",&A[i][j]);printf("The augmented matrix is:\n");for(i=0;i<n;i++){for(j=0;j<n+1;j++){printf("%6.3lf ",A[i][j]);}printf("\n"); //这部分是对的 } /*--进行列主元高斯消元法计算--*/int k,row; double temp,m,max; for(k=1;k<=n;k++){ if (A[k-1][k-1]==0){printf("No unique solution!!\n");exit (1);}max=fabs(A[k-1][k-1]);row=k-1;for(i=k;i<n;i++) //找出主元所对应的行号 ,并换行 {if (fabs(A[i][k-1])>=max){max=fabs(A[i][k-1]);row=i;}}for(j=k-1;j<=n;j++){temp=A[k-1][j];A[k-1][j]=A[row][j];A[row][j]=temp;}for(i=k;i<n;i++){m=A[i][k-1]/A[k-1][k-1];for(j=k-1;j<=n;j++)A[i][j]=A[i][j]-A[k-1][j]*m;}}/*显示计算后的矩阵*/printf("消元后的对角矩阵为:\n");for(i=0;i<n;i++){for(j=0;j<=n;j++)printf("%6.3lf ",A[i][j]);printf("\n"); }/*--计算解向量并显示--*/double sum; //计算解x[n] x[n-1]=A[n-1][n]/A[n-1][n-1];sum=x[n-1]*A[n-2][n-1];for(i=n-2;i>=0;i--){x[i]=(A[i][n]-sum)/A[i][i];sum=sum+x[i]*A[i-1][i];} printf("The solution is :\n"); //这部分是对的 //显示解 x[n]for(i=1;i<=n;i++)printf("x[%d]=%6.3lf\n",i,x[i-1]);return 0;
}
执行结果如下
列主元高斯消元法_C语言相关推荐
- 高斯消元法的c语言编程,列主元高斯消元法的C语言编程
列主元高斯消元法的C语言编程 列主元高斯消元法 基本思想:用高斯消元法求解线性方程组时,为避免小的主元,在进行第k步消元前,应该在第k列(k)元素aik(i k,(k)(k)例如|aikk| max| ...
- c语言程序设计编辑与调试环境实验报告,01程序设计基础实验报告_C语言程序设计基础.doc...
01程序设计基础实验报告_C语言程序设计基础 程序设计基础 实验报告 题 目: C语言程序设计基础 院 (部): 管理工程学院 专 业: 信息管理与信息系统 班 级: 信管101 姓 名: 张三 学 ...
- c语言精品课程网站论文免费下载,【毕业论文_c语言程序设计精品课程网站的研究与实现6喜欢就下吧材料】...
毕业论文_c语言程序设计精品课程网站的研究与实现(6)(喜欢就下吧) <毕业论文_<c语言程序设计>精品课程网站的研究与实现.doc>由会员分享,可免费在线阅读全文,更多与&l ...
- vc 运行c语言步骤,第1章_C语言概述(vc++环境如何运行c语言程序)[精选].ppt
第1章_C语言概述(vc环境如何运行c语言程序)[精选] C语言程序设计 授课对象:电子商务06 时间安排: 理论课(1-9周): 星期一 5-6节 9407D 星期三 5-6节 9410D 实验课( ...
- c语言两种排序方法的组合,排列和组合算法的实现方法_C语言经典案例
排列和组合算法是考查递归的常见算法,这两种算法能用递归简洁地实现. 本人在经过多次摸索和思考之后,总结如下,以供参考. 程序代码如下: #include #include char array[] = ...
- c语言链表查找的代码与题目,链表的C语言实现之单链表的查找运算_c语言
建立了一个单链表之后,如果要进行一些如插入.删除等操作该怎么办?所以还须掌握一些单链表的基本算法,来实现这些操作.单链表的基本运算包括:查找.插入和删除.下面我们就一一介绍这三种基本运算的算法,并结合 ...
- c语言编程基础课件,第7章_C语言图形编程基础课件
第7章_C语言图形编程基础课件 狭义的组织变革是指组织根据外部环境的变化和内部情况的变化及时地改变自己的内在组织结构,以适应客观发展的需要. 狭义的组织变革是指组织根据外部环境的变化和内部情况的变化及 ...
- 006-高级语言程序设计C 第六章,高级语言程序设计_C语言(第六章 数组.ppt
<高级语言程序设计_C语言(第六章 数组.ppt>由会员分享,可在线阅读,更多相关<高级语言程序设计_C语言(第六章 数组.ppt(30页珍藏版)>请在人人文库网上搜索. 1. ...
- Easystructure教程_C语言源代码自动生成流程图
目录 Easystructure教程_C语言源代码自动生成流程图 1. 简介 2. 下载 3. 安装 4. 使用 5. 其他软件推荐 5.1 Mermaid 5.2 Code2flow ** Easy ...
最新文章
- linkedlist 置顶
- dump mysql database_【MySQL Database】数据迁移工具:mysqldump
- 十一、练习:爬取图虫网付费图片
- store前台数据过滤
- java登录界面命令_Java命令行界面(第11部分):CmdLn
- java响应式网页设计_基于HTML5的响应式网站的设计与实现(论文).docx
- MonoBehaviour Lifecycle(生命周期/脚本执行顺序)
- Libhybris之Glibc和Bionic共存时的TLS问题(四)
- Navicat提示“failed to save password error code”的解决办法
- java调试报告_java,生成测试报告.docx
- 支持向量回归预测怎么做_使用支持向量回归进行Facebook股票预测
- win10自带输入法突然变成了繁体
- 赛尔号服务器维护时间2月13,赛尔号2月13日更新福利活动汇总 重生之翼王者归来大暗黑天刻印放送...
- 松弛型内存模型(Relaxed memory models)的一个有趣的例子
- oracle版本虚拟机,关于虚拟机装oracle10g64位数据库查看版本位数有趣的问题
- windows系统查看sn编码
- HOJ 1276 士兵队列训练问题(stl, 水题)
- Spring Cloud的基本认识和使用Spring Cloud的基本教程
- nginx安装配置 linux
- c 语言token函数,科普 | Compound的cToken及相关核心函数