稀疏矩阵及存储c语言代码,稀疏矩阵的存储和运算

稀疏矩阵的存储和运算

一 目的

根据所学知识,编写指定题目的C语言程序,并规范地完成课程设计报告。通过课程设计,加深对《程序设计语言》和《软件技术基础》课程所学知识的理解,熟练掌握和巩固C语言的基本知识和语法规范,包括:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);库函数应用等;复杂任务功能分解方法(自顶向下逐步求精、模块化设计、信息隐藏等),熟练掌握和巩固三种基本的数据结构(线性结构、树形结构、图形结构)的逻辑结构、存储结构以及相关运算和应用。

学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备利用计算机编程分析解决综合性实际问题的初步能力。

二 需求分析

为了节约存储空间,稀疏矩阵通常采用压缩存储的方式。将给定的稀疏矩阵进行压缩存储,并实现矩阵的转置等运算。

将稀疏矩阵采用三元组顺序表进行存储,实现下列操作:

(1)任意给定一个稀疏矩阵M,压缩存储M;

(2)求M的转置矩阵N;

(3)在三元组存储矩阵中查找值为x的结点是否存在,如果存在,输出它的位置,否则输出“不存在”的提示信息;

(4)打印矩阵的形状;

(5)采用模块化设计,有菜单功能。

三 概要设计

1、本程序包含两个模块

(1)主函数模块

main()

{

定义及初始化;

调用创建、转置、查找函数 ,实现不同的逻辑功能;

调用打印函数,输出原矩阵以及转置矩阵;

}

(2)自定义函数模块:

创建函数Create();

转置函数Transmat();

查找函数searchhval(x);

打印函数Print_Pmatrix(X)

2、子程序类型定义:

Create();

操作结果:完成稀疏矩阵的输入

Transmat();

操作结果:完成稀疏矩阵的转置

searchhval(x);

操作结果:完成结点x的查找

Print_Pmatrix(X);

操作结果:完成稀疏矩阵

四 详细设计

1、主函数之前

#include

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值