数据结构课程设计文具店的货品管理docWord下载.docx

上传人:b****7 文档编号:22603641 上传时间:2023-02-04 格式:DOCX 页数:17 大小:202.46KB
下载 相关 举报
数据结构课程设计文具店的货品管理docWord下载.docx_第1页
第1页 / 共17页
数据结构课程设计文具店的货品管理docWord下载.docx_第2页
第2页 / 共17页
数据结构课程设计文具店的货品管理docWord下载.docx_第3页
第3页 / 共17页
数据结构课程设计文具店的货品管理docWord下载.docx_第4页
第4页 / 共17页
数据结构课程设计文具店的货品管理docWord下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

数据结构课程设计文具店的货品管理docWord下载.docx

《数据结构课程设计文具店的货品管理docWord下载.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计文具店的货品管理docWord下载.docx(17页珍藏版)》请在冰豆网上搜索。

数据结构课程设计文具店的货品管理docWord下载.docx

文具信息可以用表1和表2来表示。

表1

文具名称

文具类别

文具数量

钢笔

1

400

日记本

2

2000

计算器

3

50

表2

文具类别号

文具类别名

文具

纸张

工具

三、源程序

#include<

stdio.h>

stdlib.h>

malloc.h>

string.h>

iostream.h>

#defineERROR0

#defineOK1

#defineOVERFLOW0

typedefstruct{

charname[10];

charlb[10];

intcount;

}datatype;

typedefstructnode{

datatypename;

structnode*next;

}listnode,*linklist;

intmenu_select();

intlinklist_init(linklist&

head);

intlinklist_create(linklist&

intlinklist_insert(linklist&

intlinklist_find(linklisthead);

intlinklist_delete(linklist&

intlinklist_print(linklisthead);

intmenu_select()

{

intsn;

printf("

\n文具店商品管理\n"

);

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

1.商店商品的初始状态\n"

2.商品的存入\n"

3.商品的查询\n"

4.商品的卖出\n"

5.商品的输出检索\n"

6.退出管理系统\n"

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

选择1--6:

"

for(;

;

{

scanf("

%d"

&

sn);

if(sn<

1||sn>

6)

printf("

输入错误,从新选择(1--6):

else

break;

}

returnsn;

}

head)//初始化

head=(linklist)malloc(sizeof(listnode));

if(!

head)

exit(OVERFLOW);

head->

next=NULL;

returnOK;

head)//商品的创建

linklistp,rear;

intflag=0;

rear=head;

while(flag==0)

p=(linklist)malloc(sizeof(listnode));

printf("

\n商店初始商品文具名称:

cin>

>

p->

name.name;

\n初始文具数量:

name.count;

\n初始文具类别:

name.lb;

p->

rear->

next=p;

rear=p;

结束初始化吗?

(1/0):

flag);

rear->

head)//向商店存货(存入文具)

linklistp,p1,p2;

p2=head;

p2=p2->

next;

p=(linklist)malloc(sizeof(listnode));

输入要存货的文具名称:

cin>

\n存货的文具数量:

\n存货的文具类别:

while(p2!

=NULL)

if(strcmp(p2->

name.name,p->

name.name)==0)

{

p2->

name.count+=p->

\n存货成功!

returnOK;

}

p1=p2;

p2=p2->

if(p2==NULL)

p1->

returnERROR;

head)//商店卖出文具

linklistp,t;

t=head;

t=t->

卖出商品的文具名称:

\n想卖出多少件:

while(t!

if(strcmp(t->

if(t->

name.count==0)

{

printf("

\n此类商品已经销售完。

returnERROR;

}

else

name.count<

name.count)

{

\n现存商品容量不足,无法卖出。

returnERROR;

}

else

t->

name.count-=p->

\n此类文具卖出成功!

returnOK;

t=t->

if(t==NULL)

\n商店没有此类文具。

intlinklist_print(linklisthead)//输出

linklistp1;

p1=head;

p1=p1->

文具名称文具类别文具数量\n"

while(p1!

%4s\t%14s\t%20d"

p1->

name.name,p1->

name.lb,p1->

name.count);

p1=p1->

\n"

intlinklist_find(linklisthead)//查找

p1=p2=head;

\n输入要查找的文具名称:

\n查找成功,输出如下:

p2->

name.name,p2->

name.lb,p2->

\n查找不成功!

voidmain()

linklisthead;

linklist_init(head);

switch(menu_select())

case1:

//创建

linklist_create(head);

break;

case2:

//存货

linklist_insert(head);

case3:

//查询文具

linklist_find(head);

case4:

//卖出文具

linklist_delete(head);

case5:

//检索文具

linklist_print(head);

case6:

\n谢谢光临,欢迎回顾!

四、调试分析

调试的过程中,对程序做了几点改进,增加了程序的容错能力,不论用户输入什么内容,程序都能安全检查。

五、测试结果

进入演示程序后,即显示主界面为:

根据提示,用户输入选项:

1、进入商店商品的初始化状态

输入表1和表2信息

其中:

结束初始化吗?

(1/0)选择0代表不结束,即继续输入商品信息,选择1代表,商品信息输入结束.

2、商品的存入

(例:

文具店需进钢笔300,橡皮200)

3、商品的查询(查询一种商品的信息,这里以钢笔为例)

初始化时,钢笔400;

后进货,钢笔300;

文具店现有存货为:

钢笔700;

4、商品的卖出

以钢笔为例:

钢笔现存700;

要卖出200

剩余钢笔500

5、商品的输出检索

可以查看现库存商品的信息

6、退出管理系统

六、课程设计小结:

通过这次课程设计,对程序设计和调试的能力有很大的提升。

这次课程设计使我深刻认识到自己专业知识的匮乏,缺乏独立程序设计的能力。

通过这次的课程设计也是我认识到了我在程序设计方面的严重不足,以及专业知识的严重匮乏。

我的程序设计思想和代码的编写和调试能力在此次课设期间有所提高。

这样一种更贴切实际的课程设计,大大的提高了我的学习效率,希望能够在平时教学的时候也能加入一些类似课程设计的程序设计习题

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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