客户消费积分管理系统.doc

上传人:sk****8 文档编号:2215153 上传时间:2019-05-02 格式:DOC 页数:21 大小:329.50KB
下载 相关 举报
客户消费积分管理系统.doc_第1页
第1页 / 共21页
客户消费积分管理系统.doc_第2页
第2页 / 共21页
客户消费积分管理系统.doc_第3页
第3页 / 共21页
客户消费积分管理系统.doc_第4页
第4页 / 共21页
客户消费积分管理系统.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

1、目录一、 系统开发的背景 1二、 系统分析与设计 1(一) 系统功能要求 1(二) 系统模块结构设计 1三、 系统的设计与实现 2(一) 添加客户: GETELEM(CNODE*HEAD) 2(二) 修改客户 AMEND(CNODE*HEAD,CHAR NAME)5(三) 删除客户 DELETE(CNODE*HEAD,CHAR NAME)8(四) 显示客户 VOID SHOWALL(CNODE*HEAD)10四、 系统测试 12(一) 测试 VOID NAIN ()函数 12(二) 部分调用函数的测试 13五、 总结 14六、 附件(代码) 141客户消费积分管理系统一、 系统开发的背景为了能

2、够快速根据客户的消费积分计算打折后的价格,以及优惠后的价格,给客户以心理上的刺激,激发客户的消费欲望。并且减轻收银员的工作负担;因此,我特别编写了一套有关客户消费积分管理的系统,来方便在日常生活中的使用。二、 系统分析与设计(一) 系统功能要求针对客户的消费情况,进行客户管理,根据客户的消费积分对客户实行不同程度的打折优惠。1、对客户的信息可以进行修改、删除、添加;2、能够根据消费情况进行客户积分的计算;3、根据积分情况实行不同程度的打折优惠;(二) 系统模块结构设计通过对系统功能的分析,客户消费积分管理系统功能如图(1)所示。图(1)客户消费管理系用统图通过上图的功能分析,首先定义了一个数据

3、域,来存储客户的基本信息;其次,基本函数成员有姓名,消费卡号,消费价格以及折扣后的价格。最主客户消费积分管理系统添加函数 修改函数 删除函数 显示函数2要的是运用 While 语句和 switch 语句的套用来实现,此外,就是要用到malloc 函数来存储客户的信息分配内存。把整个系统主要划分为 4 个模块:1、 添加客户信息:该模块主要实现,客户基本信息(姓名、消费卡号、消费金额)的添加,借助函数 Getelem(cnode*head)来实现;2、 修改客户信息:该模块主要实现,对消费者的基本信息的修改功能,借助函数 Amend(cnode*head,char name)来实现;3、 删除客

4、户信息:此模块的功能是,删除所要确定的客户信息,而达到从整个系统清除的目的,借助函数 Delete(cnode*head,char name)来实现;4、 显示客户信息:此模块的主要作用是显示消费者的相关信息,借助函数 Showall(cnode*head)来实现。三、 系统的设计与实现(一) 添加客户: Getelem(cnode*head)分析:首先选择的添加客户的指令,然后输入客户的基本信息。客户的姓名,客户的 ID 消费卡号,如果输入的不正确则需要提示重输,还有就是客户的消费金额,这样才能计算后面的积分优惠折扣。最后就显示该添加客户的信息。流程图如图(2)所示。运行结果如图(a)所示。

5、 图(2)-1 模块分析图客户姓名消费卡 ID 号 消费金额 积分折扣3图(2)添加客户信息流程图该模块的具体代码如下所示:#include/标准的输入输出库函数#include/动态存储分配函数#include/字符串函数struct cnodechar name20;/客户姓名char ID4;/客户 ID 号double consume;/客户消费double integer;/客户积分cnode*next;double display_discount(double points)/客户积分折扣函数double discount;if(points=0)discount=0;else

6、if (points0return discount;void Initstack(cnode*/malloc 函数开辟内存单元,分配 cnode 长度字节的存储区head-next=NULL;void Getelem(cnode*head)/添加客户函数cnode*p;double y;p=(cnode*)malloc(sizeof(cnode);printf(“请输入姓名:“);scanf(“%s“,printf(“请输入 ID(4 位):“);scanf(“%s“,while(strlen(p-ID)!=4)printf(“ID 有误,请重新输入(4 位):“);scanf(“%s“,p

7、-ID);printf(“请输入消费金额:“);scanf(“%lf“,p-integer=p-consume/100;y=display_discount(p-integer);printf(“折扣:%llf 折n“,y);p-next=head-next;head-next=p;system(“pasue“);void main()cnode*head;int choice;char name10;Initstack(head);doprintf(“n“);printf(“ n“);printf(“ $ 客户消费积分管理系统 $n“);printf(“ n“);printf(“n *“);

8、printf(“n * *“);5printf(“n * *“);printf(“n * 1.添加客户 *“);printf(“n * 2.查找客户 *“);printf(“n * 3.修改客户 *“);printf(“n * 4.删除客户 *“);printf(“n * 5.显示客户 *“);printf(“n * 6.统计客户 *“);printf(“n * 7.退出 *“);printf(“n *“);printf(“n 请输入您的选择(1,2,3,4,5,6,7):“);Getelem(head);break;system(“cls“);/程序运行后自动清屏while(choicene

9、xt=NULL)printf(“n 没有客户!“);elsewhile(p-next!=NULL)p=p-next;if(strcmp(name,p-name)=0)printf(“姓名:%sn“,p-name);printf(“ID:%sn“,p-ID);printf(“消费:%.2lf“,p-consume);printf(“积分:%lf“,p-integer);y=display_discount(p-integer);printf(“折扣:%.llf 折n“,y);printf(“n 请选择您要修改的资料:1.姓名 2.ID 3.消费金额n“);scanf(“%d“,开始修改客户的相关

10、信息输出修改后的信息结束没有客户结束有客户7switch(choose)case 1: printf(“请输入修改后的姓名:“);scanf(“%s“,p-name);break;case 2: printf(“请输入修改后的 ID:“);scanf(“%s“,p-ID);break;while(strlen(p-ID)!=4)printf(“ID 有误,请重输(4 位):“);scanf(“%s“,p-ID);break;case 3: printf(“请选择:1 覆盖以前的消费. 2 续加上现在的消费.“);scanf(“%d“,switch(x)case 1:printf(“请输入修改后

11、的消费:“);scanf(“%lf“,break;case 2:printf(“请输入续加金额:“);scanf(“%lf“,p-consume+=z;break;printf(“姓名:%sn“,p-name);printf(“ID:%sn“,p-ID);printf(“消费额:%.2lf“,p-consume);p-integer=p-consume/100;printf(“积分:%lf“,p-integer);y=display_discount(p-integer);printf(“折扣:%.llf 折n“,y);system(“pasue“);8图(b)(三) 删除客户 Delete(

12、cnode*head,char name)分析:首先也是要确定该客户消费积分系统有没有客户,在有客户的条件下对所在客户的相关信息进行删除。第一步要输入所要删除的客户的姓名,第二步是就是对所选定的客户进行删除,在删除结束时,会出现是否删除成功的提示语,以便进行慎重的删除操作。流程图如图(4)所示。运行结果如图(c)所示。9图(4)删除客户信息流程图该模块的具体代码如下所示:void Delete(cnode*head,char name)/删除客户函数cnode*p;int x;double y;p=head;if(p-next=NULL)printf(“n 没有客户!“);elsewhile(p-next!=NULL)head=p;p=p-next;if(strcmp(name,p-name)=0)printf(“姓名:%sn“,p-name);printf(“ID:%sn“,p-ID);printf(“消费:%.2lf“,p-consume);printf(“积分:%lf“,p-integer);y=display_discount(p-integer);printf(“折扣:%.llf 折n“,y); printf(“确认删除? 1 确认 2 取消 请选择:“);scanf(“%d“,if(x=1)开始要删除的客户是否删除成功结束没有客户结束有客户

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 课程笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。