数据结构课程设计--基本稀疏矩阵运算的运算器

数据结构课程设计--基本稀疏矩阵运算的运算器

ID:11055143

大小:145.50 KB

页数:12页

时间:2018-07-09

数据结构课程设计--基本稀疏矩阵运算的运算器_第1页
数据结构课程设计--基本稀疏矩阵运算的运算器_第2页
数据结构课程设计--基本稀疏矩阵运算的运算器_第3页
数据结构课程设计--基本稀疏矩阵运算的运算器_第4页
数据结构课程设计--基本稀疏矩阵运算的运算器_第5页
资源描述:

《数据结构课程设计--基本稀疏矩阵运算的运算器》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、数据结构课程设计五班级:06计本(1)姓名:魏建平学号:20060724035题目:严蔚敏习题实习4第1个:实现一个能进行基本稀疏矩阵运算的运算器一、需求分析1、本程序实现一个基本稀疏矩阵的简单运算,包括加、减、乘。2、执行操作前应先创造要进行运算的两个矩阵,然后再选择进行相应的操作。3、以三元组顺序表表示稀疏矩阵,实现二个矩阵相加,相减,相乘的运算;稀疏矩阵的输入形式为三元组表示,运算结果则为通常的阵列形式列出!4、首先输入矩阵的行数和列数,并判别给出的两个矩阵和行、列数对于所要求作的运算是否相匹配。可设矩阵的

2、行数和列数均不超过20;5、程序先给出了菜单项,用户只需按照菜单提示进行相应的操作就行了。6、测试数据:二、概要设计1、抽象数据类型三元组的定义如下:ADTTriple{数据对象:D={ai

3、ai(-ElemSet,i=1,2,...,n,n>=0};数据关系:R1={

4、ai-1,ai(-D,i=2,...,n}基本操作:略}2、基于三元组顺序表表示的矩阵操作:(1)创建三元组顺序表表示的矩阵:voidcreateMatrix(TSMatrix&A)(2)初始化矩阵:voidinitMatrix

5、(TSMatrix&A)(3)相加:voidadd(TSMatrixA,TSMatrixB,TSMatrix&C)(4)相减:voidsub(TSMatrixA,TSMatrix&B,TSMatrix&C)(5)找m行n列元素在A中顺序表中的位置:intsearch(TSMatrixA,intm,intn)(6)相乘;voidmult(TSMatrixA,TSMatrixB,TSMatrix&C)(7)输入以阵列形式表示的矩阵:voidprint(TSMatrixA)3、主程序Voidmain(){While(t

6、rue){调用相应函数执行相应操作;输出操作结果;}}4、本程序只有两个模块,调用关系简单:一、详细设计1、三元组结构描述:#defineMAXSIZE20usingnamespacestd;typedefstruct{introw;intcol;inte;}Triple;typedefstruct{Tripledate[MAXSIZE];intm,n,len;}TSMatrix;voidinitMatrix(TSMatrix&A){A.len=0;A.m=0;A.n=0;for(inti=0;i

7、;i++){A.date[i].col=0;A.date[i].e=0;A.date[i].row=0;}}1、各种操作函数源代码:voidcreateMatrix(TSMatrix&A){initMatrix(A);cout<<"创建矩阵:";cout<<"请输入矩阵的行列值及非0元素个数";cin>>A.m>>A.n>>A.len;for(inti=0;i>A.date[i].row;cin>>A.date

8、[i].col;cin>>A.date[i].e;}}voidadd(TSMatrixA,TSMatrixB,TSMatrix&C)//相加{if(A.m==B.m&&A.n==B.n){inti=0,j=0;intk=0;C.m=A.m;C.n=A.n;while(i

9、

10、j

11、en++;j++;}elseif(iB.date[j].row){C.date[k].col=B.date[j].col;C.date[k].row=B.date[j].row;C.date[k++].e=B.date[j].e;C.len++;j

12、++;}elseif(A.date[i].row

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。