商店管理系统课程设计报告Word格式文档下载.docx
- 文档编号:20880108
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:19
- 大小:490.95KB
商店管理系统课程设计报告Word格式文档下载.docx
《商店管理系统课程设计报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《商店管理系统课程设计报告Word格式文档下载.docx(19页珍藏版)》请在冰豆网上搜索。
四、主要数据结构
/*定义存储单元基本信息的结构*/
structthing
{
charname[10];
//商品名字
intnum;
//商品编号
intkucun;
//商品库存
floatdanjia;
//商品单价
structthing*next;
//指向下一个商品信息的链
};
五、流程图
六、源代码
//**************************************************************
//*程序名:
商店管理管理系统*
//*作者:
孙太明汪腾飞张红福陈红彪胡培鑫巩持烁*
//*时间:
2012-6-6*
//*功能:
实现对商品的输入、输出、增加、减少、库存等*
/*用链表实现学生成绩信息的管理*/
//商店商品信息管理系统
#include<
stdio.h>
stdlib.h>
//#include<
FILE.h>
//defineSPstructthing
structthing*creat(void);
voidproduct(structthing*p);
structthing*del(structthing*p);
//structthing*p;
structthing*sell(structthing*head);
//structthing*head;
structthing*insert(structthing*head,intn);
structthing*review(structthing*head);
//intn=0;
structthing*duqu();
voidbaocun(structthing*head);
//主函数
voidmain()
system("
color3a"
);
intn=0,b;
structthing*head;
intchoose;
do{
printf("
\n\n\n\t\t请选择:
1菜单,任意数结束\n"
scanf("
%d"
&
b);
if(b!
=1)
exit(0);
system("
cls"
printf("
\t\t◤☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆◥"
\t\t\t*\t\t*欢迎使用商店管理系统**\n"
\t\t**\n"
\t\t*【1】:
商品列表*\n"
\t\t*【2】:
商品买卖*\n"
\t\t*【3】:
库存商品增新*\n"
\t\t*【4】:
库存商品删除*\n"
\t\t*【5】:
商品详细修改*\n"
\t\t*【6】:
建立库存*\n"
\t\t*【7】:
提取信息*\n"
\t\t*【0】:
退出管理系统*\n"
\t\t◣☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆◢"
请输入要选择的功能:
"
choose);
if(choose>
=0&
&
choose<
=7)
{
switch(choose)
case1:
product(head);
break;
case2:
head=sell(head);
case3:
head=insert(head,n);
n++;
case4:
head=del(head),n--;
case5:
head=review(head);
case6:
head=creat();
n=n+4;
case7:
head=duqu();
case0:
baocun(head);
printf("
欢迎使用商店管理系统!
\n"
exit(0);
}
elseprintf("
输入错误!
}while
(1);
}
//原始创建
structthing*creat()
structthing*head,*p,*q;
inti;
请输入四种商品\n"
for(i=1;
i<
5;
i++)
{
if(i==1)head=p;
elseq->
next=p;
q=p;
请输入商品名字、编号、数量、单价\n"
p=(structthing*)malloc(sizeof(structthing));
scanf("
%s%d%d%f"
p->
name,&
p->
num,&
kucun,&
danjia);
if(i==1)
{
head=p;
q=p;
}
else
{
q->
q=p;
}
p->
next=NULL;
returnhead;
//显示商品信息
voidproduct(structthing*p)
if(p==NULL)
gotoend;
\t\t商品详细信息\n"
\t产品编号\t产品名字\t库存\t单价\n"
do
\t%d\t\t%s\t\t%d\t%.2f\n"
num,p->
name,p->
kucun,p->
p=p->
next;
while(p!
=NULL);
end:
;
//商品出售
structthing*sell(structthing*head)
intnum,n;
floatsum;
structthing*p;
p=head;
请输入购买商品的编号:
num);
请输入购买的数量:
n);
while(p->
num!
=num&
next!
=NULL)
if(p->
kucun<
n)
商品库存不足!
\n\n\n\n"
num==num)
p->
kucun=p->
kucun-n;
else
对不起,没有此商品!
\n\n\n"
sum=p->
danjia*n;
\t\t购买清单\n\n"
\t商品名:
\t%s\n"
name);
\t商品单价:
\t%.2f\n"
\t数量:
\t%d\n"
n);
\t总金额:
\t%.2f\n\n\n"
sum);
/*删除商品信息*/
structthing*del(structthing*p)
structthing*head,*q;
无库存!
head=p;
q=p;
请输入商品的编号:
\n"
while(p->
p=p->
if(p->
if(p==head)
head=p->
elseq->
next=p->
printf("
%d号商品已删除!
//n=n-1;
else
无此商品!
returnhead;
//商品插入
structthing*insert(structthing*head,intn)
structthingfood;
structthing*p0,*p1;
p0=&
food;
p1=head;
food.num=n+1;
物品的名称:
%s"
food.name);
物品的数量:
food.kucun);
物品的单价:
%f"
food.danjia);
if(head==NULL)
head=p0;
p0->
else
while(p1->
p1=p1->
p1->
next=p0;
return(head);
//商品修改
structthing*review(structthing*head)
{
intnum,kucun;
请输入要修改的编号:
请输入修改后的价格和库存:
%f%d"
danjia,&
kucun);
structthing*p1;
\nthelistisNULL!
gotoend;
}
while(p1->
p1->
p1=p1->
if(p1->
p1->
danjia=danjia;
kucun=kucun;
elseprintf("
找不到该编号\n"
//文件保存
voidbaocun(structthing*head)
FILE*p1;
if((p1=fopen("
file"
"
w"
))==NULL)
不能打开文件!
fwrite(p,sizeof(structthing),1,p1);
fclose(p1);
//文件读取
structthing*duqu()
intn=0;
rb"
p=(structthing*)malloc(sizeof(structthing));
fread(p,sizeof(structthing),1,p1);
n++;
while(!
feof(p1))
if(n==1)
head=p;
else
q->
七、测试结果及分析
1、欢迎界面:
2、商品输入:
3、显示商品列表操作:
4、商品买卖:
5、商品新增操作:
6、商品删除操作:
7、商品修改操作:
8、提取操作:
9、退出:
八、小结
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,当今计算机应用在是生活中可以说得是无处不在。
因此作为二十一世纪的大学来说掌握计算机开发技术十分重要的。
我的题目是商店商品信息管理系统,对于我们这些新手来说,这是很大的考验,怎么才能找到课堂所学与实际应用的最佳结合点?
怎么才能让我们的程序在篇幅上简单,在使用价值上丰富?
怎样让自己的计划更具有序性,而不会忙无一用?
我从来不相信车到山前必有路的说法,认为那只是懒惰者自寻懒惰的借口,我要积极,要把握,要努力。
回顾起此次课程设计,至今我仍感慨颇多,的确,从确定题目到完成整个编程,从理论到实践,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体、链表、文件……通过这次课程设计之后,一定把以前所学过的知识重新温故。
这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在我们的坚持不懈的努力下,终于游逆而解。
在课程设计过程中,我们学到了很多人生的哲理,懂得怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪,黑夜过去了,我们收获的是黎明。
没有了柳暗花明的一天,那么我怎么能说经受住了考验?
不得不说这是精神的胜利,是永不言败的精神让我们的程序重见天日。
九、参考文献
C程序设计(第三版)谭浩强著清华大学出版社
程序设计基础(第三版)吴文虎著清华大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 商店 管理 系统 课程设计 报告