欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    购物卡管理系统设计实习报告.docx

    • 资源ID:7651347       资源大小:339.55KB        全文页数:32页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    购物卡管理系统设计实习报告.docx

    1、购物卡管理系统设计实习报告17题 购物卡管理系统【题目要求】设计购物卡管理系统,系统主要模块:(1) 实现系统内制卡、发卡功能;(2) 实现系统内账户及相关账户管理;(3) 实现卡交易和合法性检查;(4) 实现卡金融交易积分功能;(5) 实现卡报表功能;(6) 数据以文件形式存储。【提示】制卡:指申请一张购物卡,但还没有使用。发卡:指该购物卡已经启用。实现卡交易:指从卡中消费掉一定的金额。一、 系统需求分析根据题目要求,由于购物卡金额的信息存放在文件中,所以应提供文件的输入、输出等操作;在程序中要实现购物卡的各项功能,应提供制卡、发卡、存款、消费、账户信息的管理查看,退出程序等一系列操作;另外

    2、还应提供键盘式选择菜单实现功能选择。二、 系统总体设计根据上面的系统需求分析,可以将这个系统的设计分为如下七大模块:制卡、发卡、存款、消费、查询账户积分、查询账户交易记录、查询全部信息三、 详细设计1. 欢迎界面为了使程序人性化,我为程序设计了比较简单的欢迎界面,没有实际意义,只是表示进入购物系统的提示。 【分析】:void main() printf(nnnnnnnnn); printf(tt*购 物 卡 管 理 系 统*n); printf(nnntt 按回车键进入.); getchar(); menu();这里通过简单的输入输出函数来实现欢迎界面,通过用户输入回车键进入菜单进行操作。 2

    3、. 主函数主函数的设计比较简介,只提供了进入菜单、模块选择、退出系统等模块的调用。其中各功能模块用菜单方式选择,力图做到简洁明了,直观大方。流程图如下:【流程图】【分析】:函数开头有“文件包含”的预处理命令,所谓“文件包含”处理是指一个源文件可以将另外一个源文件的全部内容包含进来,即将另外的文件包含到本文件之中。C语言提供了#include命令用来实现“文件包含”的操作。在本程序中包含了一下头文件:string.h、ctype.h、stdio.h,方便调用库函数实现某些功能。在这个程序中,定义了一个结构体数组来存放购物卡用户的各种信息,包括账户卡号、户主姓名、账户余额、账户支出、账户积分,结构

    4、体如下:struct credicard int num;/*账户号码*/ char name20;/*户主名称*/ float surplus;/*账户余额*/ char state2;/*账户状态,y:已启用,n:未启用*/ int point;/*账户积分*/char word8;/*账户密码*/ int flag; float account; /*账户余额*/int integal; /*账户支出*/float point;u100;同时在各分函数中,定义了int、float、char等一系列变量类型,用来实现函数功能。主函数比较简单,但是函数的调用很多,所以,在程序的开头就加上了各

    5、函数的声明,如下:void menu();/*主菜单函数模块*/void made();/*制卡函数模块*/void ppoint();/*积分查询模块*/void putin();/*存款函数模块*/void life();/*发卡函数模块*/void browse();/*报表模块*/void activate(int k);void check(int k); /*查询全部信息函数模块*/void menu1(int k); /*次级菜单函数模块*/实现菜单选择功能,使用的是switch语句,根据用户输入的菜单选项a,调用不同的函数实现各种功能:3. 各功能模块设计2.1 制卡模块【流程

    6、图】2.2 发卡模块【流程图】2.3 存款模块【流程图】2.4 消费模块【流程图】2.5 查询账户相关信息模块【流程图】2.7 查询全部信息模块【流程图】4. 积分查询模块设计【流程图】5. 公共函数设计返回模块,即在完成一项命令之后,可以选择返回主菜单或者是退出程序。【流程图】总结功夫不负有心人,经过了连续6天的学习,练习,思考和编写,终于完成了这个实习题目的编写,完成了任务,写出了报告。期间不乏艰难困苦,想要放弃的时候。但是通过老师耐心的指导,同学热心的帮助,再加上网上查阅的资料和自身的思考,终于攻破了一道道难关,最终写出了程序。在程序的编写过程中,我对数据的存储和提取方面的知识比较模糊,

    7、不能有效运用,导致我多次出错,严重阻碍了我编写的步伐,后来经过对c语言教科书再次深入的学习和同学的指点下,我终于弄清了思路,解决了问题。再就是各个模块中各种条件的判断上我出了不少错误,百思不得其解,不知道如何限制条件。最后在老师的指导下,通过网络上一个相似程序的解读,终于解决难题,通过判断来导向不同函数。这次实习告诉了我,要学会利用资源,学会学习别人的长处,再加以自身的思考,理解才能成功。因为这是个购物卡系统,本着以人为本的思想,我在如何使系统看上更加美观,人性化上下了不少功夫。并且实际去观察了超市收银台的系统,进行学习,在剩余的时间对程序进行了改良。让程序更容易使用和操作理解,让界面更人性化

    8、,更简洁明了,方便查询信息。我相信这是每一个编程人员需要做的。但是每个程序总有不足之处,我程序的缺点就是数据可能会溢出,且设置的最大存储量是1000,且密码也容易看到,这些都不太好。总之,在这次实习中,我充分的利用了以前学习的知识,也学到了很多,遇到困难知难而进不退缩,努力思考解决难题,逐个攻破,也巩固了c语言的知识,动手实践能力也增强了,第一次编出了这么完整有用的一个程序,对自己也比较满意,充分培养了自己的动手实践能力。最后,感谢学校给我这个实习的机会,还有同学老师的帮助,让我能够完成这个实习任务。源代码:#include#include /*调用字符函数*/#include#include

    9、 /*通用输入输出库*/#include#define M 1000void menu();void made();void ppoint();void putin();void life();void enter();void browse();void activate(int k);void check(int k);void menu1(int k);void fetch(int k);void change(int k);void deposit(int k);void stat_one(int k);void print_one(int j);void point();int se

    10、arch(char h20);int n=0;struct credicard /*定义信用卡结构体*/ int number; char name20; char ID20; char word8; int flag; float account; int integal; float point;cardM;void menu() int v,w1; do printf(nnnn); printf(tt|*|n); printf(tt n); printf(tt| (1) 制 卡 操 作 |n); printf(tt| - |n); printf(tt| (2) 激 活 发 卡 |n);

    11、printf(tt| - |n); printf(tt| (3) 帐 户 登 陆 |n); printf(tt| - |n); printf(tt| (4) 报 表 操 作 |n); printf(tt| - |n); printf(tt| (5) 查 询 积 分 |n); printf(tt| - |n); printf(tt| (6) 退 出 |n); printf(tt|*|n); printf(nntt 请选择操作(1-6):bb); scanf(%d,&v); if(v6) printf(nntt*输 入 错 误 !*); w1=1; getchar(); else w1=0; wh

    12、ile(w1=1); switch(v) int i; case 1:made();break; /*制作*/ case 2:life();break; /*发卡*/ case 3:enter();break; /*登陆*/ case 4:browse();break; /*报表*/ case 5:ppoint(i);break; /*查询积分*/ case 6:exit(0); /*退出*/ void main() printf(nnnnnnnnn); printf(tt*欢 迎 进 入 购 物 卡 管 理 系 统*n); printf(nnntt 按回车键进入.); getchar();

    13、menu();void made() /*制卡操作*/ int i; char h20; do printf(nnt请输入要申请的8位数号码:bbbbbbbbb); scanf(%s,h); if(strlen(h)!=8) printf(nnntt*输入有误,请重新输入*nn); continue; for(i=0;in;i+) if(strcmp(cardi.ID,h)=0) printf(nntt*该号码已经存在,请重新输入*nn); break; while(strlen(h)!=8)|strcmp(cardi.ID,h)=0); cardn.number=n; strcpy(card

    14、n.name,*); strcpy(cardn.ID,h); strcpy(cardn.word,000000); cardn.flag=0; cardn.account=0.00; cardn.integal=0; cardn.point=0; printf(nnntt*制 卡 完 成 !*nn); print_one(n); n+; putin(); menu();void ppoint() int l; if(n=0) printf(nntt*无记录,请先制卡!*); else printf(n|-|-|-|-|); printf(n|NO. | 姓 名 | 卡 号 | point |)

    15、; printf(n|-|-|-|-|); for(l=0;ln;l+) printf(n|%4d|%15s|%16s|%10f , cardl.number,cardl.name,cardl.ID,cardl.point); printf(n|-|-|-|-|); menu();void print_one(int j) /*显示消息*/ printf(n|-|-|-|-|-|-|-|); printf(n|NO. | name | ID |flag| account | integal| point |); printf(n|-|-|-|-|-|-|-|); printf(n|%4d|%1

    16、5s|%16s|%4d|%9f|%8d|%10f|, cardj.number,cardj.name,cardj.ID,cardj.flag,cardj.account,cardj.integal,cardj.point); printf(n|-|-|-|-|-|-|-|);void putin() /*存款*/ int i; FILE *fp; if(fp=fopen(score.txt,wb)=NULL) printf(tt Can not open the file n); return; for(i=0;in;i+) if(fwrite(&cardi,sizeof(struct cre

    17、dicard),1,fp)!=1) printf(tt File write error n); return; fclose(fp); printf(nnntt*成功保存!*);void life() /*登陆*/ int k=-1; char h20; if(n=0) printf(nntt*请 先 制 卡*n); else printf(nnt请输入购物卡号码:bbbbbbbbb); scanf(%s,h); k=search(h); if(k=-1) printf(nnttt*该号码不存在!*n); else if(cardk.flag=1) printf(nntt*该卡已经激活!*n

    18、); else activate(k); menu();int search(char h20) int i,k=-1; for(i=0;in;i+) if(strcmp(cardi.ID,h)=0)k=i; return(k);void activate(int k) /*发卡激活操作*/ char m20,p8; int x,w2; do printf(nntt 是否激活该卡? (1) 是 (2) 否 n); printf(ntt 请选择卡号:bb); scanf(%d,&x); if(x2) w2=1;getchar(); else w2=0; while(w2=1); if(x=1)

    19、printf(nntt请输入姓名:bbbbbbbbbbbbbbbbbbbb); scanf(%s,m); strcpy(cardk.name,m); printf(nntt请输入六位数密码:bbbbbbb); scanf(%s,p); strcpy(cardk.word,p); cardk.flag=1; printf(nnntt*激 活 成 功!*nn); print_one(k); putin(); void enter() /*进入*/ int k=-1; char h20; if(n=0) printf(nntt*请 先 制 卡*n); else printf(nnt请输入购物卡号码:

    20、bbbbbbbbb); scanf(%s,h); k=search(h); if(k=-1) printf(nnttt*该号码不存在!*n); else if(cardk.flag=0) printf(nntt*该卡还未激活,请先激活!*n); else check(k); menu();void check(int k) /*验证核对*/ int c=0,w3=0; char p8; do printf(nntt*请输入密码:bbbbbbb); scanf(%s,p); if(strcmp(cardk.word,p)!=0) printf(nntt*密码错误,请重新输入!*n); c+; c

    21、ontinue; else printf(nntt*密 码 正 确 !*n); w3=1; menu1(k); while(w3=0&c3);void menu1(int k) /*显示*/ int v,w4; do printf(nnn); printf(tt|*|n); printf(tt n); printf(tt| (1) 查 询 |n); printf(tt| - |n); printf(tt| (2) 存 款 |n); printf(tt| - |n); printf(tt| (3) 消 费 |n); printf(tt| - |n); printf(tt| (4) 修 改 密 码

    22、 |n); printf(tt| -|n); printf(tt| (5) 返回主菜单 |n); printf(tt|*|n); printf(nntt Choice your number(1-5):bb); scanf(%d,&v); if(v5) w4=1;getchar(); else w4=0; while(w4=1); switch(v) case 1:stat_one(k);break; case 2:deposit(k);break; case 3:fetch(k);break; case 4:change(k);break; case 5:menu(); void stat_one(int k) printf(nntt*操 作 成 功 !*); print_one(k); menu1(k);void deposit(int k) float a=0.00; printf(nntt请输入存款金额:bbbbbbbbbbb); scanf(%f,&a); cardk.account+=a; printf(nntt*存 款 成 功 !*); print_one(k); putin(); menu1(k); void fetch(int k) /*消费*/


    注意事项

    本文(购物卡管理系统设计实习报告.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开