动态矩阵的产生与管理一综述Word文档格式.docx
《动态矩阵的产生与管理一综述Word文档格式.docx》由会员分享,可在线阅读,更多相关《动态矩阵的产生与管理一综述Word文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
提示:
先用链表动态管理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->