矩阵的加减乘2教案_第1页
矩阵的加减乘2教案_第2页
矩阵的加减乘2教案_第3页
矩阵的加减乘2教案_第4页
矩阵的加减乘2教案_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计名称:课程设计题目:完成期限:课程设计任务书20122013学年第一学期数据结构课程设计矩阵的加减乘运算自2012年12月10日至2012年12月21日共2周设计内容:力口、减、乘法运算是矩阵的基本运算。由键盘任意输入的两个矩阵,对运算的合法性进行判断,根据判断结果作出相应处理。矩阵存储、原始矩阵和矩阵运算结果的输出需采用合适的形式。设计要求:1遵循结构化程序设计思想编程实现,附必要注释。2界面友好,操作简便,容错性好。指导教师:李靖教研室负责人:郑坤课程设计评阅指导教师签名:年月摘要设计了一个矩阵运算系统,该矩阵运算系统具有普通矩阵的相加、相减、相乘等功能。本运算系统以Microso

2、ftVisualC+作为系统开发工具,采用算法表达式处理算法来实现矩阵的加、减、乘运算。系统操作简单,界面清晰,易于为用户所接受。关键词:矩阵;二维数组;VC+1课题描述02需求分析13概要设计24详细设计35程序编码56程序调试及测试77结果分析78总结7参考文献71课题描述数据结构是一门理论性强、思维抽象、难度较大的课程,是基础课和专业课之间的桥梁只有进行实际操作,将理论应用于实际中,才能确实掌握书中的知识点。通过课程设计,不仅可以加深学生对数据结构基本概念的了解,巩固学习成果,还能够提高实动手力。为学生后继课程的学习打下良好的基础。本次课设的设计内容是矩阵的相加,相减,相乘运算。由键盘任

3、意输入两个矩阵,对运算的合法性进行判断,根据判断结果作出相应处理。经过分析后可以发现虽然计算存在规律,但是输入数据没有规律。所以我就将其设计为一个循环运算的程序,这样我就把没有规律的数据有规律的存放在连续的内存单元中。设计的过程中要遵循结构化程序设计思想,必要时附上相应的注释。此程序的功能可以分解为三个大的部分,第一部分就是实现数据的输入与对合法性的判断;第二部分就是实现两个矩阵的加减乘运算以及结果的保存;第三部分的功能就是实现对第二部分运算结果的输出显示。通过本次课设,可以使我们对程序的调试方法及思想有更进一步的理解。并且让我们学会了使用一些编程技巧,使学我们养成良好的编程习惯。2需求分析1

4、) .数据由用户从键盘输入,要求用户进行输入选择再进行运算,界面要求简约。2) .实现矩阵的存储,输出,计算的功能。3) .运算系统包括矩阵的加减和乘运算,要求用户必须可以输入任何矩阵并可以实现用户需求。3概要设计这次试验主要运用MicrosoftVisualC+编译工具,使用C语言进行编程。首先通过C语言考虑到用户的界面,使用选择界面进行操作。然后在输入矩阵的时候采用二维数组的方法实现存储并按照格式输出,这样可以实现简约美。在循环的时候采用内外嵌套循环使用使运算可以更加清楚。因为考虑到加减运算法则一致所以采用了加减同时运算,乘法分开运算然后可以符合用户需求,在进行判断的时候必须在输入的时候就

5、提前先进行判断,然后在输入两个矩阵之后在进行矩阵运算法则的判断。运算完成之后可以继续选择运算不至于跳出又要重复启动程序,最后会选择退出。演示程序以用户和计算机对话的方式执行,即在计算机的终端上的“信息提示”下进行相关的数据的输入和操作。4详细设计此程序的功能可以分解为三个大的部分,第一部分就是实现数据的输入与对合法性的判断;第二部分就是实现两个矩阵的加减乘运算以及结果的保存;第三部分的功能就是实现对第二部分运算结果的输出显示。本程序用数组存储的方式建立矩阵,最终利用菜单来选择是进行相加还是相减或相乘运算,在输入每个数据前都先对其进行判断,若有错则提示重新输入,若无错将继续进行。图矩阵运算主流程

6、图for(p=0;p<i;p+)for(q=0;q<j;q+)Cpq=Apq+Bpq;两矩阵进行加法运算.for(p=0;p<i;p+)输出运算后的结果for(q=0;q<j;q+)printf("%10.2r,Cpq);if(q+1)%j=0)printf(nnH);图加法运算流程图5程序编码#include<>defineM40defineN40floatAMN;floatBMN;floatCMN;inti,j,m,n,p,q,k;intmain()(printf(#");printf(物#欢迎您使用矩阵计算器系统。#、);print

7、fcnun系统功能:#'n);printfC#矩阵的加减乘运算;#n");printf(;intx;doprintf(请选择您需要的运算,若退出则选择0后按回车键结束n);tf(*n);printf(,?0,退出n);printfCl,矩阵相加减n);printfC2,矩阵相乘n););scanf(%d,&x);switch(x)case0:printf(谢谢您使用该系统!);break;*nn");printf(请输入矩阵A的行数和列数(用逗号隔开):);scanf(绘d,%d,&i,&j);)printf("请输入矩阵B的行数和

8、列数(用逗号隔开):);scanf(d,%d,&m,&n);while(m<=0In<=0)printf(*对不起,您输入有误,请重新输入.*nn);printf(请输入矩阵B的行数和列数(用逗号隔开):);scanf("%d,%d",&m,&n);)while(i!=mj!=n)*nn);printf(请输入矩阵A的行数和列数(用逗号隔开):);scanf(绘d,%d,&i,&j);printf("请输入矩阵B的行数和列数(用逗号隔开):);scanf("%d,%d,&m,&n);printf(请输入矩阵A:n);*nn);printf(请输入矩阵A的行数和列数(用逗号隔开):);scanf(d,%d,&i,&j);printf("请输入矩阵B的行数和列数(用逗号隔开):);scanf(d,%d,&m,&n);while(m<=0*=0)据结构习题与解析M(C语言版)北京:清华大学出版社,20022谭浩强.C程序设计教程M.北京:清华大学出版

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论