- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、【题目】:服装销售系统
【要求】
(1) 系统包含三类用户:管理员、店长、销害员。
(2) 向管理员提供以下功能:自身密码修改、其他用户添加刪除、用户信息修改、统计。 商品信息添加、修改、删除、查找、统计。
(3) 向店长提供以下功能:登录、注销、自身密码修改、自身信息修改,商品信息修改、 商品信息设计,查巻日报表、月报表、商品销售量报表、查找浏览黑修改商品储备 信息0
(4) 向销售员提供以下功能:商品浏览、查找、出售,查看自己本日报表、本月报表。 [提示]
(1) 总体设计:整个服装销售系统可设计为管理员模块、店长模块、销售员模块、商品 模块等。
(2) 数据结构采用结构体。
二、结构图
根据需求分析,该程序中销售员应实现如下功能:商品浏览、
商品查找、出售商品、销售记录、用户注销,具体结构图如下。
店长应实现如下功能:登录、注销、自身巒码修改、自身信息 修改,商品信息修改、商品信息设计,查看日报表.月报表、商品销 售量报表、查找浏览器修改商品储备信息,具体结构图如下。
管理员需要实现如下功能:自身密码修改、其他用户添加删除、 用户信息修改、统计。商品信息添加、修改、删除、查找、统计。具 体结构图如下。
三、程序中典型的流程图分析
添加模块
(1)分析:信息添加模块职工的基本信息包括:用户、商品基本信息,对它们
输入后,要存进原文件,流程图如下。
浏览模块
(1)分析:浏览功能首先需要查找信息是否存在,在查找时,因为磁盘文件 无序,所以采用直接查找的办法。在容错上有较好的能力,输错时系统会有提示, 也会作出相应的反映。算法和以上的分程序有相同的优点。
[流程
查询模块
(1)分析:基本信息的查询按查询方式:按商品的名称查询,可供选择的方式比较丰富。 但本程序只便用了一种。在查询小模块中采用了直接查找的方法,这主要是由于磁摄文件无 序的缘故。程序在选择结构上采用了 if和else的做套形式,看起来有点繁杂,没有用switch 语句应观明了,这个地方可以改成更好的。
删除模块
(1)分析:商品信息存放在磁盘中,程序须将该文件全部取出来,在内存中 把要删掉的内容除去,然后在重新输入到磁盘,这种算法比较合理,但有一点烦 琐。可以改为另一种办法:设置一个标示符,对有这些标识符的记录在下次输入 时跳过,在新商品信息输入时,将其覆盖就行了。在对文件进行删除时,考虑到 很多方面,如:查询不到时系统该如何处理等。人性化设计有在删除之前询问是 否继续。
[流程图]
五)修改模块
(1)分析:修改与删除程序相似,管理员信息存放在磁盘中,程序须将该文
件全部取出来,在内存中把要修改的内容修改,然后在車新输入到磁盘,这种算 法比较合理,但有一点烦琐,可以改进。
四、题目分析
1、 按照系统需要三类用户用它作为主函數:int mainO {
user *usc; DRESS *drcss; ADMIN *adm;
usc=(uscr *)malloc(200*sizcof(uscr));
uscrlntiatc(usc);
adm=(ADMIN *)malloc(sizeof(ADMIN));
adininlntiatc(adm);
drcss=(T)RESS *)malloc(500*sizcof(T)RESS));
drcsslntiatc(drcss);
while ⑴
{
i f(firs t(use,adm,dress)==3) continue;
}
}
2、 三类用户的选择登陆为
int *first(uscr *usc,ADMIN *adm,DRESS *drcss)
{
int chose;
int tctnp,tcmp2;
while ⑴
{ system (els);
printf(”
//——
: 功能菜羊
〃\n“);
printf(”
//
/八眄;
printff1
//
〃\眄;
printf(,r
//
1,销售员登陆
〃\n”);
printf(,r
//
2,店长登陆
〃\n”);
printf(,r
//
3,管理员登陆
〃\n”);
printf(,r
//
//\nj;
printf(,r
//——二
二 //W);
printf(H\n /二二二二二二二二二二二二二二二二二二二二二二二二二二二二二请选择服务的种类
========/\n“);
scanf(M%dM,chose);
if(choscl | |chosc5)
{
printf(“ 你的选择出现错谋!按任意键重新的进入选择菜单! \『);
systcmCpausc^);
continue;
}
switch(chosc)
{
case 1:
{
systemf,ds,);
i f(uscrload (use)== 1)
{ us
文档评论(0)