欢迎来到天天文库
浏览记录
ID:22290733
大小:323.00 KB
页数:12页
时间:2018-10-28
《数据结构实验稀疏矩阵计算器》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验报告题目:稀疏矩阵运算器班级:14电子商务平台建设班完成日期:2015.11.2学号:20141103468姓名:孙少辉学号:20141103421姓名:杨德龙学号:20141103407姓名:柴益新一:需求分析稀疏矩阵是指那些多数元素为零的矩阵。利用“稀疏“特点进行存储和计算可以大大节省存储空间,提高计算效率。实现一个能进行稀疏矩阵基本运算的运算器。【基本要求】以“带行逻辑链接信息“的三元组顺序表示稀疏矩阵,实现两个矩阵相加、相减和相乘运算。稀疏矩阵的输入采用三元组表示,而运算结果的矩阵则以通常阵列形式列出。【项目约束】1.首先应输入矩阵的行数和列数,并判断给出的两个矩阵行、列数对于
2、所要求作的运算是否相匹配。可设矩阵的行数和列数均不超过20。2.程序可以对三元组的输入顺序加以限制,例如,按行优先。注意研宄教科书5.3.2节中的算法,以便提高计算效率。1.在用三元组稀疏矩阵时,相加或相减所得结果矩阵应该另生成,乘积矩阵也可用二维数组存放。三:详细设计1:数据结构的定义元素类型、变量、指针类型(1)项目数据表:3.2子函数函数名入口参数出口参数功能介绍main()定义二维数组及用到的各种变量3:函数调用关系无函数调用关系,只有一个主函数四:调试分析三元组顺序的输入规则。以000作为输入的结束信号。完成实现稀疏矩阵的相加、相减、相乘的运算。五:用户使用说明(1)首先运行文件
3、系统1.首先定义要运算的第一个稀疏矩阵的行列数定义完成之后输入另一个要运算的稀疏矩阵的行列。⑵输入信息:如下图所示输入两个矩阵的元素所有输入信息以及运算方法输入完成之后。回车直接算出结果(3)输出信息:c、-^C:Docu>entsandSettingsAd>inistratorj^lfiiDebucCppl.eze*请瑜入第一个矩阵的行列输入第二个矩阵的行列请3甲=元组的方式输入第一个矩阵<例111011〉(输入000时结耒)、》000溝用三元组的方式输入第二个矩阵〈例11>(输入000吋结來)23-13133-3000鼉输入执行操作(♦或-或*)答蒺为:10000B8-10-
4、3Pressanykeytocontinue六、源代码/氺氺林*项目名称:稀疏矩阵的运算林*设计者:杨德龙,柴益新,孙少辉林木时间:2015.11.02林木实现目标:实现矩阵的加法,减法,乘法;木木氺/#include#incIudeintmain0//定义二维数组及用到的各种变量inta[20][20];intb[20][20];intc[20][20];intm,n,k,I,i,j,p;intsum;into;chart;//输入橾作printf(’•请输入第一个矩阵的行列»<);scanf("%d%d",&n,&m);//初始化a数组for(
5、i=0;i6、):while(true){scanf(n%d%d%dn,&i,&j,&p);if(i~0&&j==0&&p二二0)break;elseb[i~1][」-1]二p;}printf("请输入执行橾作(+或-或*)");while(true){getchar0;scanf("%cn,&t);if(t~•+•)//加法运算printf("不能进行该运算!!");exit(0);//结束}else{printf("答案为:");for(i=0;i7、it(0);//结束printf(n不能进行该运算!!n);exit(0);//结束}else{printf("答案为:");for(i=0;i
6、):while(true){scanf(n%d%d%dn,&i,&j,&p);if(i~0&&j==0&&p二二0)break;elseb[i~1][」-1]二p;}printf("请输入执行橾作(+或-或*)");while(true){getchar0;scanf("%cn,&t);if(t~•+•)//加法运算printf("不能进行该运算!!");exit(0);//结束}else{printf("答案为:");for(i=0;i7、it(0);//结束printf(n不能进行该运算!!n);exit(0);//结束}else{printf("答案为:");for(i=0;i
7、it(0);//结束printf(n不能进行该运算!!n);exit(0);//结束}else{printf("答案为:");for(i=0;i
此文档下载收益归作者所有