- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构实验四B.doc
《数据结构与算法分析》
实验报告书
学 期: 2014 - 2015 学年第 2 学期
班 级: 信息管理与信息系统2班
学 号: 1310030217
姓 名: 田洪斌
实验类别: ( )基础型 (★)设计型
实验时间:
成 绩:
信息管理系
实验内容
1、实现程序,基于对称矩阵的压缩存储表示方法,实现对于以整数数据为数据元素的对称矩阵的压缩存储及按行、列下标查询特定元素等操作。
2、实现程序,基于稀疏矩阵三元组表存储表示方法,参照教材所述类C语言算法,实现对于以整数数据为数据元素的稀疏矩阵的存储、求转置阵等操作。
实验目的
1、掌握线性表的链式结构的静态及操作特点;
2、掌握线性表的链式结构的存储结构和常见操作在C语言环境中的实现方法;
需求分析
用线性表的链式结构表示来完成输入、编辑、调试、运行的全过程。并规定:
手动输入行数、列数和非零元的个数
程序可以输入、调试、运行、显示
测试数据:n个顶点的行号、列号以及值
系统设计
1.数据结构设计
使用三元组顺序表实现稀疏矩阵的定义,稀疏矩阵的三元组顺序表的存储用的是结构体在这个结构体中行标和列标使用整型定义,而一维数组采用的是结构体这样子做方便后面功能的实现。在整个程序中函数与函数之间采用的是调用的关系,这样是为了使程序模块化,方便以后的维护。
程序结构设计
(1)程序中主要函数功能:
void CreateTriTupleTable(TriTupleTable *T)/////////////////////////////////////////////稀疏矩阵的创建
void Traverse(TriTupleTable *T)///////////////////////////////////////////////////////////////稀疏矩阵的显示
void TransMatrix(TriTupleTable *A, TriTupleTable*B)///////////////////////////////稀疏矩阵的转置
void menu()/////////////////////////////////////////////////////////////////////////////////////////////菜单
void main()//////////////////////////////////////////////////////////////////////////////////////////////主函数
函数调用关系
见图6-1
图
图6-1 函数关系图
调试分析
算法和函数中出现了一些系统无法识别的变量,照成程序出现了错
误。原因是没有注意算法与源程序的区别。算法是简单的对源程序进行描述
的,是给人阅读的,所以有些变量没有定义我们就能看懂。而程序中的变量一定要先定义才能够被引用,才能被计算机识别。
在调试过程中遇到问题是利用C++程序进行调试的,找出错误并改正。
学会如何调用函数。
学会稀疏矩阵的存储方法以及常见操作在C语言环境中的实现方法。
在程序运行中,每次运行到转置是就停止运行,最后在程序中找出了错误并改正了。
输入5:即退出程序
测试结果
1.运行时输入正确密码进入主界面,系统根据输入的数字选项来调用相应的函数。主要实现“功能选择”的界面,在这个界面里有显示系统的五大功能,根据每个功能前面的序号进行选择。以下为该界面:
图6-2 主界面
2.当选择1录入完成输入时,运行结果如下图:
图6-3 稀疏矩阵的创建
3.当录入完成输入显示稀疏矩阵时,运行结果如下图:
图6-4稀疏矩阵的显示
4.当选择稀疏矩阵的转置并显示时,运行结果如下图:
图6-5稀疏矩阵的转置
当选择退出时,运行结果如下图:
图6-6退出程序
经验和体会
本次试验利用C语言编程,完成了三元组表的建立、三元组表的输出、三元组表的转置,函数之间的调用,提升了我的C语言编程能力,同时也加深了我对数据结构中关于线性表结构有关基础概念、基本算法的理解,同时,通过程序的调试及观察分析程序运行的情况,也进一步增加了我调试程序的经验,并使我认识到了线性表的结构。
程序源代码
#include stdio.h
#define MaxSize 100
/////////////////////////////////三元组表的存储方式
您可能关注的文档
最近下载
- Roland罗兰乐器JUNO-Gi 带数字录音功能的便携合成器JUNO-Gi Workshop 04 Realtime Control in the JUNO-Gi支持文档.pdf
- 天正变频器TVFS9说明书.pptx VIP
- 人教版小学三年级上册语文期末.docx VIP
- SW7203数据手册_V13926596180高效率双向升降压.pdf VIP
- GB50070-2024-矿山电力设计规范.doc
- 学前教育_农村幼儿园户外游戏活动现状的调查研究.docx VIP
- 国开农村经济管理形考作业1-4试题及答案.pdf
- 嵌入式系统基础与实践基于ARMCortex-M3内核的STM32微控制器习题答案.pdf
- 学前教育_传统文化在幼儿园环境创设中应用现状调查.docx VIP
- 2024-2025学年人教版数学三年级上册期末测试卷.pdf VIP
文档评论(0)