欢迎来到天天文库
浏览记录
ID:1472231
大小:102.00 KB
页数:33页
时间:2017-11-11
《数据结构课程设计(稀疏矩阵运算器)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、课程设计报告*****大学数据结构课程设计说明书题目:稀疏矩阵运算器学生姓名:学号:专业:班级:指导教师:2013年7月24日33/33课程设计报告稀疏矩阵运算器摘要摘要:设计一稀疏矩阵运算器。实现两个矩阵的相加、相减和相乘的功能。用“带行逻辑链接信息”的三元组顺序表表示稀疏矩阵,实现两个矩阵相加、相减和相乘的运算,采用分级的设计方法,分别设计出加、减、乘运算器的子程序,相加运算时只要依次存储、扫描两矩阵的行、列数,若行、列数相等,再取行、列下标相等的元素,相加后存入结果矩阵。相减运算与相加运算相同,同样取行、列下标相等的元素,相减后存入结果矩阵。相乘运算
2、要先判断两矩阵能否相乘。若能相乘,则取行、列号相对应的元素进行相乘及相加,最后将对应元素存入结果矩阵中。通过实验表明本程序能够进行稀疏矩阵的相加,相减,相乘运算。具备矩阵的加、减、乘功能。关键词:相加运算器;相减运算器;相乘运算器33/33课程设计报告数据结构课程设计任务书针对本课程设计,完成以下课程设计任务:1、熟悉系统实现工具和上级环境。2、根据课程设计任务,查阅相关资料。3、针对所选课题完成以下工作:(1)、需求分析(2)、概要设计(3)、详细设计(4)、编写源程序(5)、静态走查程序和上机调试程序4、书写上述文档和撰写课程设计报告。33/33课程设
3、计报告目录稀疏矩阵运算器I摘要II课程设计任务书III课程设计正文Ⅳ第一章问题描述5第二章需求分析6第三章概要设计9第四章详细设计194.1函数说明104.2算法分析19第五章调试分析21第六章测试结果23第七章课程设计总结24参考文献24附录(程序清单)3333/33课程设计报告第一章问题描述一、问题描述:稀疏矩阵是指那些多数元素为零的矩阵,利用“稀疏”特点进行存储和计算可以大大节省存储空间,提高计算效率,实现一个能进行稀疏矩阵基本运算的运算器。二、基本要求:以“带行逻辑链接信息”的三元组顺序表表示稀疏矩阵,实现两个矩阵相加、相减和相乘的运算。稀疏矩阵的
4、输入形式采用三元组表示,而运算结果的矩阵则以通常的阵列形式列出。33/33课程设计报告第一章需求分析1、运算器程序以用户和计算机的对话方式执行,数组的建立方式为边输入边建立。2、由题目要求可知:首先应输入矩阵的行数、列数和非零个数,并判别给出的两个矩阵的行、列数对于所要求作的运算是否相匹配。3、程序可以对三元组的输入顺序不加以限制;根据对矩阵的行列,三元组作直接插入排序,从而进行运算时,不会产生错误。4、在用三元组表示稀疏矩阵时,相加、相减和乘积所得结果矩阵应该另生成,为了算法方便,使用二维数组存放。程序在VisualC++6.0环境下设计。程序执行的命令
5、为:1.稀疏矩阵加法;2.稀疏矩阵减法;3.稀疏矩阵乘法;33/33课程设计报告第一章概要设计1、三元组结构定义:typedefstruct{//三元组结构inti,j;//矩阵行下标和列下标inte;//值}triple;2、稀疏矩阵结构定义:typedefstruct//矩阵结构{tripledata[MAXSIZE+1];intm,n,t;//矩阵的行数、列数、非零元个数}tripletable;3、两个稀疏矩阵相加函数:Add(tripletableM,tripletableT)4、两个稀疏矩阵相减函数:mut(tripletableM,tripl
6、etableT)5、两个稀疏矩阵相乘函数:mul(tripletableM,tripletableT)6、主函数:voidmain(){初始化;switch{接受命令;选择处理命令;}}33/33课程设计报告7、本程序有四个模块,调用关系如下:主程序模块矩阵输入模块矩阵运算模块矩阵输出模块8、本程序的流程图:33/33课程设计报告开始选择要执行的操作作选择3,进行矩阵乘法运算选择1,进行矩阵加法运算选择2,进行矩阵减法运算输入n个矩阵A的行数、列数、非零元个数输出结果结束33/33课程设计报告第一章详细设计4.1函数说明:1、稀疏矩阵的三元组顺序表存储表示
7、:typedefstruct{//三元组结构inti,j;//行下标和列下标inte;//值}triple;2、稀疏矩阵存储表示:typedefstruct//矩阵结构{tripledata[MAXSIZE+1];intm,n,t;//矩阵的行数、列数、非零元个数}tripletable;3、主要函数:voidAdd();voidcut();voidmul();intmain();4.2算法分析:设计一个矩阵类实现矩阵的运算:classtripletable(包含矩阵的各种运算函数)。输入矩阵(以三元组形式输入非零元),输出矩阵(阵列形式)。{triple
8、tableM;intm,n,t,i,j,e,k,c,d;33/33
此文档下载收益归作者所有