- 11
- 0
- 约3.41万字
- 约 28页
- 2017-06-28 发布于浙江
- 举报
大连工业大学数据结构单链表课程设计设计报告
《数据结构》课程设计报告
1)需求分析
此程序主要用来实现单链表的创建、插入、删除、排序、并、交、差
运算及输出等基本操作。
程序需要根据使用者的需要来运算得出符合要求的结果
①在程序运行的过程中根据提示进行输入,使用了scanf 函
数;
②使用了printf 函数进行输出;
③程序输出符合使用者的需要的结果;
④程序能够输出任意运算的正确结果。
2)概要设计
1. 定义所需的数据结构
data *next
typedef struct LNode{
int data; //数据域
struct LNode *next; //指针域
}LNode, *LinkList;
2. 模块划分
void LinkListCreat(LinkList L,int n); //创建
void ListInsert(LinkList head,int i,int e); //插入
void ListDelete(LinkList head,int i,int e); //删除
void printList(LinkList head); //输出
void LinkListsort(LinkList L); //排序
void LinkListMerge(LinkList La, LinkList Lb,LinkList Lc); //
并
void LinkListJiao(LinkList La, LinkList Lb,LinkList Lc); //交
1
void LinkListcha(LinkList La, LinkList Lb,LinkList Lc); //
差
void LinkListhebing(LinkList La, LinkList Lb,LinkList Lc); //差集的并
void main(); //主函数,分别调用以上的子函数
3 .功能设计
首先利用元素逆序插入法建立链表,然后导出菜单,用switch
调用各个子函数,实现链表的创建,插入,删除,排序,交,并,
差等运算,其中排序用的是冒泡法。
3)详细设计
//单链表的创建
void CreatList(Lnode *L) /*建立链表CreastList 函数*/
{ Lnode *p;
int value;
L-next=NULL;
当输入非 数值时
while (1) /* 0 */
{scanf( %d,value);
if (value==NULL)
return;
建立 链表
p=(Lnode *)malloc(sizeof(Lnode)); /* P */
p-data=value;
p-next=L-next; /*把后输入的插到前面*/
L-next=p;
}
}
//单链表的输出
void printList(Lnode *head)
{
printf(输出的结果如下: \n);
Lnode *p = head-next;//头结点赋给P
if (p == NULL)
{
printf(List is empty!\n);
return;
2
}
您可能关注的文档
最近下载
- LTC流程培训课件.pptx VIP
- 2026年郑州工业安全职业学院单招职业适应性测试题库及答案1套.docx VIP
- 【小升初】2023-2024学年江苏省南通市苏教版升学分班考数学模拟测试题2套(含解析).pdf VIP
- 安徽省考试录用公务员公安类真题及参考答案.doc VIP
- 人教版(2024)八年级上册英语全册各单元阅读理解练习题汇编(含答案).docx
- 36岁儿童学习与发展指南解读.doc VIP
- 2026年郑州工业安全职业学院单招职业技能考试题库及答案详解1套.docx VIP
- 《国家标准》羊肉分割技术规范.doc VIP
- EPSS怡达快速电梯TRE110电气原理图纸(2014版).pdf
- 2026年郑州工业安全职业学院单招职业技能测试题库及答案1套.docx VIP
原创力文档

文档评论(0)