数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx

上传人:b****3 文档编号:14222620 上传时间:2022-10-20 格式:DOCX 页数:36 大小:401.12KB
下载 相关 举报
数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx_第1页
第1页 / 共36页
数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx_第2页
第2页 / 共36页
数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx_第3页
第3页 / 共36页
数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx_第4页
第4页 / 共36页
数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx

《数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx(36页珍藏版)》请在冰豆网上搜索。

数据结构课程设计报告仓库管理系统通讯录管理系统猴子选大王Word下载.docx

charNO;

//商品编号

charname[max];

//商品名称

charcount;

//商品数量

};

2.应用程序功能

开始运行时界面如下:

仓库管理链表建立界面如下:

仓库管理链表插入界面如下:

仓库管理链表查询界面如下:

按商品编号查询界面如下:

按商品名称查询界面如下:

仓库管理链表删除界面如下:

仓库管理链表输出界面如下:

3.输入数据类型、格式和内容限制

输入数据类型为字符型,但在输入过程中不可出现空格,如在输入商品名称时不可出现空格。

4.主要模块的算法描述

流程图:

5.源程序代码

#include<

stdio.h>

#include"

iostream"

intflag1=0;

#include"

string.h"

stdlib.h"

windows.h"

usingnamespacestd;

typedefstruct{//仓库管理结点类型

charNO[10];

charname[30];

charcount[5];

}DataType;

typedefstructnode{//结点类型定义

DataTypedata;

//结点数据域

structnode*next;

//结点指针域

}ListNode;

typedefListNode*LinkList;

LinkListhead;

ListNode*p;

LinkListCreateList(void);

voidInsertNode(LinkListhead,ListNode*p);

ListNode*ListFind(LinkListhead);

voidDelNode(LinkListhead);

voidPrintList(LinkListhead);

/*******尾插法建立带头结点的仓库管理链表算法*******/

LinkListCreateList(void)

LinkListhead=(ListNode*)malloc(sizeof(ListNode));

//申请头结点

ListNode*p,*rear;

charflag='

y'

;

//intflag=0;

//结束标志置0

rear=head;

//尾指针初始指向头结点

while(flag=='

p=(ListNode*)malloc(sizeof(ListNode));

//申新结点

printf("

商品编号(10)商品名称(30)商品数量(5)\n"

);

-----------------------------------------------\n"

\n添加商品编号:

\n"

cin>

>

p->

data.NO;

\n添加商品名称:

data.name;

\n添加商品数量:

data.count;

rear->

next=p;

//新结点连接到尾结点之后

rear=p;

//尾指针指向新结点

继续添加记录?

(y/n):

"

flag;

}

next=NULL;

//终端结点指针置空

returnhead;

//返回链表头指针

/*********在仓库管理链表head中插入结点************/

voidInsertNode(LinkListhead,ListNode*p)

ListNode*p1,*p2;

p1=head;

p2=p1->

next;

while(p2!

=NULL&

&

strcmp(p2->

data.NO,p->

data.NO)<

0)

p1=p2;

//p1指向刚访问过的结点

p2=p2->

//p2指向表的下一个结点

p1->

//插入p所指向的结点

next=p2;

//连接表中剩余的结点

/**********有序仓库管理链表的查找****************/

ListNode*ListFind(LinkListhead)

charnum[10];

charname[9];

charpp;

==================\n"

a.按商品编号查询\n"

b.按商品名称查询\n"

请选择:

"

p=head->

pp;

getchar();

if(pp=='

a'

||pp=='

A'

请输入要查找的商品编号:

num;

while(p&

strcmp(p->

data.NO,num)<

0)p=p->

if((p==NULL)||strcmp(p->

data.NO,num)>

0)p=NULL;

//没有查到要查找的通讯信息

else

b'

B'

请输入要查找的商品名称:

name;

while(p&

data.name,name)!

=0)p=p->

returnp;

/********仓库管理链表上的结点删除*****************/

voidDelNode(LinkListhead)

charjx;

ListNode*p,*q;

p=ListFind(head);

//调用查找函数

if(p==NULL)

没有查到要删除的商品信息!

return;

if(p!

=NULL)printf("

真的要删除该商品吗?

jx;

if(jx=='

||jx=='

Y'

q=head;

while((q!

=NULL)&

(q->

next!

=p))q=q->

q->

next=p->

//删除结点

free(p);

//释放被删结点空间

删除成功!

/********仓库管理链表的输出函数**********/

voidPrintList(LinkListhead)

商品编号商品名称商品数量\n"

--------------------------------------------------------------------------------\n"

while(p!

=NULL)

%15s%20s%23s\n"

p->

data.name,p->

data.count);

---------------------------------------------------------------------------------\n"

p=p->

//后移一个结点

voidmain()

intchoice,j=1;

charChoice;

while(j)

\n\n\n\n\n"

\t\t\t\t仓库管理系统\n"

\n\t\t\t******************************"

\n\t\t\t*1---仓库管理链表建立*"

\n\t\t\t*2---仓库管理链表插入*"

\n\t\t\t*3---仓库管理链表查询*"

\n\t\t\t*4---仓库管理链表删除*"

\n\t\t\t*5---仓库管理链表输出*"

\n\t\t\t*0---退出仓库管理系统*"

\n\t\t\t请选择菜单号(0--5):

choice;

switch(choice)

case1:

**********************************\n"

*仓库管理链表建立*\n"

head=CreateList();

flag1=1;

system("

cls"

break;

case2:

if(flag1!

=1){printf("

请先建立表!

Sleep(1500);

*仓库管理链表插入*\n"

商品编号(10)商品名称(30)商品数量\n"

*************************************\n"

//申请新结点

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

当前位置:首页 > 工程科技 > 能源化工

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

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