动态矩阵的产生与管理一综述Word文档格式.docx

上传人:b****1 文档编号:13569540 上传时间:2022-10-11 格式:DOCX 页数:11 大小:66.92KB
下载 相关 举报
动态矩阵的产生与管理一综述Word文档格式.docx_第1页
第1页 / 共11页
动态矩阵的产生与管理一综述Word文档格式.docx_第2页
第2页 / 共11页
动态矩阵的产生与管理一综述Word文档格式.docx_第3页
第3页 / 共11页
动态矩阵的产生与管理一综述Word文档格式.docx_第4页
第4页 / 共11页
动态矩阵的产生与管理一综述Word文档格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

动态矩阵的产生与管理一综述Word文档格式.docx

《动态矩阵的产生与管理一综述Word文档格式.docx》由会员分享,可在线阅读,更多相关《动态矩阵的产生与管理一综述Word文档格式.docx(11页珍藏版)》请在冰豆网上搜索。

动态矩阵的产生与管理一综述Word文档格式.docx

提示:

先用链表动态管理1行的数据,有了基础之后再设计管理二维的数据

四、课程设计要求:

程序质量:

●贯彻结构化的程序设计思想。

●用户界面友好,功能明确,操作方便。

●用户界面中的菜单至少应包括“输入矩阵的行数和列数”、“输入矩阵元素”、“打印矩阵”、“退出”4项。

●代码应适当缩进,并给出必要的注释,以增强程序的可读性。

●。

课程设计说明书:

课程结束后,上交课程设计说明书(打印稿和电子稿),其内容如下:

●封面

●课程设计任务书

●目录

●需求分析(分析题目的要求)

●程序流程图(总体流程图和主要功能模块流程图)

●核心技术的实现说明及相应程序段

●个人总结

●参考资料

●源程序及适当的注释

指导教师:

________学生签名:

________

 

目录

一、需求分析1

二、程序流程图1

三、核心技术的实现说明及相应程序段4

四、个人总结10

五、参考文献10

六、源程序11

一、需求分析

动态矩阵的产生有几个步骤组成,1输入动态矩阵的维数2用链表建立一个动态矩阵3输出动态矩阵

1输入动态矩阵的维数输入矩阵的行数和列数

2产生动态矩阵首先在内存开辟一个空间并且输入一个元素,判断行数和列数是否满足要求,当满足要求继续开辟内存空间,并且与前一个元素相连,直到行数和列数不满足要求

3输出动态矩阵输出矩阵的元素

二、程序流程图

1、程序总体结构图

表1

2、产生矩阵流程图

表2

3输出矩阵

表3

三、核心技术的实现说明及相应程序段

#include<

stdlib.h>

stdio.h>

string.h>

#defineNULL0

#defineLENsizeof(structnumber)

定义结构体,用来存储一个结点数据

structnumber

{

intnum;

structnumber*next;

};

introw;

inttier;

structnumber*head;

structnumber*creat()

inti,n,m;

structnumber*p1,*p2,*p3;

n=0;

for(i=0;

i<

row;

i++)

{

printf("

\n第%d行"

i+1);

if(i==0)

在内存中开辟一段空间

p1=p2=(structnumber*)malloc(sizeof(LEN));

else

p1=(structnumber*)malloc(sizeof(LEN));

printf("

\n请输入数据:

"

);

scanf("

%d"

&

p1->

num);

while(n<

tier)

{

n=n+1;

if(n==1&

&

i==0){head=NULL;

head=p1;

}

elsep2->

next=p1;

p2=p1;

if(n!

=tier)

p1=(structnumber*)malloc(sizeof(LEN));

}

}

p2->

next=NULL;

p3=head;

returnhead;

voidprint(structnumber*head)

intn;

structnumber*p;

p=head;

if(head!

=NULL)

{

do

%d\t"

p->

p=p->

next;

n++;

if(n%tier==0)

printf("

\n"

}while(p!

=NULL);

输入函数

voidinput_row_tier()

\n请输入行数:

row);

\n请输入列数:

tier);

voidmain()

intmm;

while

(1)

\n1输入行和列"

\n2录入"

\n3输出"

\n4退出\n\t"

scanf("

mm);

switch(mm)

case1:

input_row_tier();

break;

case2:

creat();

case3:

print(head);

case4:

exit(0);

四、个人总结

在C语言中,数组的长度是固定的。

但是在有时,不知道究竟使用多少元素的时候,就必须定义足够长的数组,这样不仅浪费内存资源,而且在程序编写过程中很容易出现一些不可意料的错误。

C语言中提供的内存管理程序可以帮助我们开辟固定长度的内存空间,这样我们根据内存空间、利用链表的相关知识可以创建动态数组。

在编制程序的过程中,使我学会了链表的有关操作,掌握了动态内存管理的方法,虽然只是一个小的程序,但是我是通过自己的努力一步步完成的,使我受益很深。

五、参考文献

1谭浩强.C程序设计.北京:

清华大学出版社,2005

2刘成等.C语言程序设计实验指导与习题集.北京:

中国铁道出版社,2006

六、源程序

p=p->

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 实习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1