用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析

上传人:bin****86 文档编号:60213967 上传时间:2018-11-14 格式:DOCX 页数:11 大小:19.93KB
返回 下载 相关 举报
用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析_第1页
第1页 / 共11页
用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析_第2页
第2页 / 共11页
用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析_第3页
第3页 / 共11页
用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析_第4页
第4页 / 共11页
用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析》由会员分享,可在线阅读,更多相关《用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析(11页珍藏版)》请在金锄头文库上搜索。

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划用c语言设计一个矩阵运算器的课程设计报告的设计和调试分析东南大学C语言课程设计报告课程名称:计算机综合课程设计学院:设计题目:n阶方阵求逆级别:B学生姓名:学号:同组学生:学号:指导教师:XX年8月29日目录1.课程设计任务书-32.题目分析-43.系统设计-44.模块分析-65.程序分析-126.结果与分析-187.总结-208.参考文献-211.课程设计任务书1.功能简介求n阶矩阵的逆矩阵a)输入一个n阶方阵A,方程系数矩阵与向量均从文本文件读入;b)输出A的逆矩阵至文本文件;c

2、)将得到的逆矩阵与矩阵A相乘,验证其结果是否为单位矩阵。2.设计总体要求:?采用模块化程序设计;?鼓励可视化编程;?源程序中应有足够的注释;?学生可自行增加新功能模块;?必须上机调试通过;?注重算法运用,优化存储效率与运算效率;?需提交源程序(含有注释)及相关文件(数据或数据库文件);(cpp文件、txt或dat文件等)?提交设计报告书。2.题目分析N阶方阵求逆是一道线性代数中有关矩阵的题目,所以我们在编写程序之前,首先要先搞清楚矩阵与逆矩阵的关系,从而选择合适的编程方式,以尽可能的提升效率。首先,我们都知道:设A为n阶方阵,如果存在n阶方阵B使得AB=BA=E,则称A是可逆的,并称B是A的逆

3、矩阵;否则,便说A不可逆。此为逆矩阵的概念,并且逆矩阵是唯一的。而求逆矩阵的方法也是多样化的,其中常用的有行初等变化法和求伴随矩阵法。而在平时我们大多数情况下都会选择行初等变换法,但我个人认为在编程时其并不好实现,在将右边添加的单位矩阵转移到左边时困难重重。而反观求伴随矩阵法,应用此方法的关键是求原矩阵的伴随矩阵和行列式的值,而求伴随矩阵则需要求原矩阵各元素对应的代数余子式,而求代数余子式的关键则是求原矩阵任意去掉第i行j列后剩余部分组成的新矩阵及其对应的行列式的值。综上诉述,整个程序的核心就分成了两部分:求矩阵任意去掉第i行j列后剩余部分组成的新矩阵和求行列式的值。除此之外为了求伴随矩阵还需

4、要用到令矩阵转置的程序,为了验证矩阵与其逆矩阵相乘后得到的是单位矩阵还需要用到矩阵相乘的程序。同时,无论选择哪种方法我们都要实现从文本的输入输出,这一点只要掌握了相应的格式就易于实现,而选择求伴随矩阵法思路清晰且易于实现,所以在此次课程设计中我选择编写通过求伴随矩阵来求逆矩阵的程序。3.系统设计1.程序设计思路根据课程设计要求矩阵要从文本文件读入同时运行程序所得的逆矩阵也要输出至文本文件,所以要提供文件的输入和输出操作;为将得到的逆矩阵与原矩阵相乘从而验证其结果是否为单位矩阵,应提供矩阵相乘的操作;剩余的部分即为本课程设计的重点,求一个方阵的逆矩阵的操作。C语言程序设计课程设计报告专业:班级:

5、姓名学号:姓名:指导教师:成绩:目录一、课程设计的目的与要求?1二、方案实现与调试?1掷骰子游戏?1射击游戏?3计算存款本息之和?5肇事逃逸?8礼炮?10汽车加油?12大优惠?13金币?15三、课程设计分析与总结?17附录程序清单?17一、课程设计的目的与要求实验目的C语言是一种编程灵活,特色鲜明的程序设计语言。C语言除了学习必须的基本知识,如概念,方法和语法规则之外,更重要的是进行实训,以提高学习者的动手和编程能力,这是学习语言的最终目的。结合多年来的教学经验,根据学生的学习情况,为配合教学过程,使“项目教学法”能在本质上促使学生有更大进步,特编写了该C语言程序设计任务书,以在实训过程中给学

6、生提供帮助。达到如下目的:1在课程结束之前,让学生进一步了解C程序设计语言的编程功能;2让学生扎实掌握C程序设计语言的相关知识;3通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识与专业知识有效地结合,更全面系统地了解行业知识。设计要求根据实验内容的要求自由选定题目。编写程序要求遵循如下基本要求:?模块化程序设计?锯齿型书写格式?必须上机调试通过课程设计报告1、设计目的2、总体设计3、详细设计、模块功能说明。4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施。5、源程序清单和执行结果:源程序中应有足够的注释。、检查标准1、学生必须编写

7、可运行的程序,对教师的提问能熟练地当面解释清楚,回答的问题和程序运行的结果作为评分的主要衡量标准;2、按照本文后要求须提交电子内容的清单提交相关内容。二、方案实现与调试掷骰子游戏?题目内容的描述两人玩骰子,游戏规则如下:1)两人轮流掷骰子,每次掷两个,每人最多掷10次。2)将每人每次的分值累加计分3)当两个骰子点数都为6时,计8分;当两个点数相等且不为两个6时,计7分;当两个点数不一样时,计其中点数较小的骰子的点数。4)结束条件:当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上。最后显示双方分数并判定优胜者。?输入数据类型、格式和内容限制和输出数据的说明1)数据类型:整型;2)

8、内容限制:随机数的产生;3)输出数据:获胜一方。?主要模块的算法描述1)程序流程图如下:2)语言描述如下:此题目主要运用了循环语句。首先用随机数产生器产生产生玩家投骰子的点数;接下来根据点数计算玩家的分;接下来判断投掷的次数是否达到5次是的话比较一方的累计分数是不是在另一方的倍以上,是的话则胜利,否的话继续投掷!?调试过程及实验结果1)调试过程遇到的问题与解决方案:没能正确理解“当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上”这句话的意思,以为是满五或者满十的时候带累计总分一次然后比较分数,确定获胜方!所以将“if(i=6)”z这个语句写成了“if(i=6)”,在后来的调试过

9、程中发现,及时改正了!2)实验结果如下:东华理工大学C语言课程设计报告题目:设计一个简单计算器姓名:地瓜叶学号:?指导老师:吴志强老师目录1.设计目的2.内容3.总体设计4.源程序编写5.执行结果6.心得体会一、设计目的设计一个简单计算器,在功能上功能尽量模拟windows操作系统中的计算器,系统界面不做强制要求。全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数、指针和文件的操作,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解

10、决实际问题的能力,规范编程思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。二、内容1、程序设计的一般步骤a、确定数据结构b、确定算法c、编程d、调试e、总结资料2、基本要求a设计正确,方案合理,能实现相应功能。b界面友好,使用方便。c程序精炼,结构清晰。d设计报告含程序设计说明,用户使用说明,源程序清单及程序框图。e上机演示。三、总体设计四、源程序编写#include#include#includedoublejisuan(chara)inti=1,j,k,m,cnt=0,t1=0,t2=0,t3=0;charnibo50,zhan250;doublex,n,l,z=0,zhan320;typedefstructdoubled1;intd2;dd;typedefstructdddata50;inttop;zhan1;zhan1shu;=0;while(ai!=0)if(ai=0&ai=0&aj=9)j+;j-;for(k=i;k=j;k+)z=z*10+ak-0;j=j+1;x=z;if(aj=.)l=1;目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号