特殊矩阵的压缩与解压缩_第1页
特殊矩阵的压缩与解压缩_第2页
特殊矩阵的压缩与解压缩_第3页
特殊矩阵的压缩与解压缩_第4页
特殊矩阵的压缩与解压缩_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程名称: 数据结构课程设计课程设计标题3360特殊矩阵压缩和解压缩名称:科系:计算机科学和技术学院专业:计算机科学和技术年级: 2011级学号:导师:王爱平2013年九月十四日目录1课程设计的目的.32需求分析.33课程设计报告内容.33.1概述设计.33.2详细设计.33.3调试分析.43.4用户指南.43.5测试结果.44摘要.45节目列表.46工具书.157节目截图.151.课程设计的目的(1)为了解决实际问题,擅长用C语言编写程序。(2)了解和掌握具有初步独立分析和设计能力的数据结构和算法设计方法。(3)初步了解软件开发过程问题分析、系统设计、节目编码、测试等基本方法和技术(4)综合

2、运用所学的理论知识和方法,提高独立分析和问题解决的能力。2.需求分析(1)压缩特殊矩阵(例如对称、三角形和带状)以节省存储空间。(2)解压缩压缩的矩阵3特殊矩阵压缩和解压缩设计3.1摘要设计压缩矩阵数据结构:Typedef struct ElemType * elemInt amountInt boundint w;Int kind SpecialMatrix3.2详细设计Int random array (int a max,int kind,int * bound,int * w)/函数功能3360随机生成特殊矩阵初始化int init matrix(special matrix * ma

3、trix,intkind,intbound,intw)/函数功能3360压缩矩阵void destory matrix(special matrix * matrix)/删除函数功能:压缩矩阵void arrayto matrix(special matrix * matrix,int a max)/函数功能3360矩阵压缩void arraytos matrix(special matrix * matrix,int a max)/函数功能3360对称矩阵压缩void arraytot matrix(special matrix * matrix,int a max)/函数功能3360三角矩

4、阵压缩void arraytob matrix(special matrix * matrix,int a max)/函数功能3360带状矩阵压缩Void matrix to array (int a max,special matrix matrix)/解压缩函数功能:特殊矩阵Void s matrix to array (int a max,special matrix matrix)/解压缩函数功能3360对称矩阵Void tmatrixtoarray (int a max,special matrix matrix)/解压缩函数功能3360三角矩阵Void bmatrixtoarray

5、 (int a max,special matrix matrix)/解压缩函数功能3360 ribbon矩阵void show matrix(special matrix matrix)/函数功能:显示器压缩矩阵Void显示阵列(int a max,int bound)/函数功能:初始矩阵显示3.3调试分析(略)3.4用户指南(省略)3.5测试结果(略)4摘要(省略)5、程序清单:#include#include#include#define MAX 18Typedef int ElemTypeTypedef struct /压缩矩阵数据结构ElemType * elemInt amount

6、Int boundint w;Int kind SpecialMatrixInt random array (Int a max,int,int *,int *);Int init matrix (special matrix *,Int,int,int);void destory matrix(special matrix *);void arrayto matrix(special matrix *,intamax);void arraytos matrix(special matrix *,intamax);void arraytot matrix(special matrix *,in

7、tamax);void arraytobmatrix(special matrix *,intamax);Void ShowMatrix(SpecialMatrix):Void ShowArray(int aMAX,int);Void matrix to array (int a max,special matrix);Void s matrix to array (int a max,special matrix);Void tmatrixtoarray (int a max,special matrix);Void bmatrixtoarray (int a max,special mat

8、rix);Int main()Int m max max、bound、w、kind、choaseSpecialMatrix矩阵;While(1)Printf(* * *解压缩和解压缩特殊矩阵* * * * * * * * * * * * * n );Printf(1 .压缩 n );Printf(2 .解压缩 n );Printf(3 .退出 n );Printf(选择“:”);scanf(“% d”,choase);交换机(choase)案例1:Printf(1 .对称矩阵 n );Printf(2 .三角矩阵 n );Printf(3 .功能区矩阵 n );Printf(4 .退出 n )

9、;Printf(选择“:”);scanf(“% d”,kind);If(4=kind)布列克;RandomArray(M,kind,bound,w);Printf(随机生成的矩阵为: n );ShowArray(M,bound);InitMatrix(Matrix、kind、bound、w);ArrayToMatrix(Matrix,M);Printf(矩阵压缩后为: n );展示矩阵(矩阵);printf(“ n”);布列克;Case 2:If(!Matrix.elem)Printf (Matrixn无 n );布列克;Printf(“矩阵压缩内容为: n”);展示矩阵(矩阵);Matrix

10、ToArray(M,Matrix):printf(“ n解压缩后为: n”);ShowArray(M,matrix . bound);printf(“ n”);布列克;Case 3:退出(1);Default: breakDestoryMatrix(矩阵);return 0;Int random array (int a max,int kind,int * bound,int * w)/函数功能3360随机生成特殊矩阵Int i、j、r;Time _ t t tsrand(unsigned)time(t);If(kind 1 | kind 3)Printf(输入错误! n );return

11、0;* w=1;* bound=0;While(1)* bound=rand()% MAX;If(*bound 2)布列克;交换机(kind)案例1:for(I=0);I * boundI)for(j=0);j=I;j)r=rand();aIj=ajI=r;布列克;Case 2:* w=rand()% 2 1;/生成控制父三角形或子三角形的随机数开关(* w)案例1:for(I=0);I * boundI)for(j=0);J * boundj)If(i=j)r=rand()1;aIj=r;ElseaIj=0;布列克;Case 2:for(I=0);I * boundI)for(j=0);J

12、* boundj)If(i=j)r=rand()1;aIj=r;ElseaIj=0;布列克;布列克;Case 3:* w=rand()%(* bound)1;While(0=(*w)%2)* w=rand()% * bound 1;for(I=0);I * boundI)for(j=0);J * boundj)If(j=(i-(*w/2) j=(i (*w/2)r=rand()1;aIj=r;ElseaIj=0;布列克;return 1;初始化int init matrix(special matrix * matrix,intkind,intbound,intw)/函数功能3360压缩矩阵if(kind 1 | | kind 3 | | bound 1 | | bound 100 | | w1 | | w bound)Printf(输入错误,重新输入 n );return 0;Elsematrix-kind=kind;matrix-bound=bound;matrix-w=w;交换机(kind)案例1:matrix-amount=(bound *(bound 1)/2;布列克;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论