C语言课程设计(论文)-购物卡管理系统.doc
C语言课程设计报告班学号:1姓名:指导老师:日期:2010年6月中国地质大学(武汉)计算机学院一、题目要求系统主要功能模块:1,实现系统内制卡,发卡功能。2,实现系统内购物卡帐户及相关帐户管理。3,实现购物卡交易和合法性检查。4,实现购物卡交易积分功能。5,实现购物卡报表功能。6,数据以文件形式存储。提示:制卡:指申请一个购物卡,但还没有使用。发卡:指该卡已经起用。实现卡交易:指从卡中消费掉一定金额。二、需求分析根据题目要求,由于购物卡信息是存放在文件中,所以应提供文件的输入、输出等操作;在程序中需浏览购物卡的信息,应提供报表、查询等操作;另外还应提供键盘式选择菜单实现功能选择。三、总体设计根据需求分析,可以将系统分为五大模块:制卡、发卡、登陆、报表、积分。四、详细设计1、主函数将main()函数体内的界面选择部分语句单独抽取出来作为一独立函数,目的在于系统执行完每部分功能模块后能够方便返回到系统界面。制卡模块发卡模块登录模块积分模块报表模块查询储蓄修改密码消费购物卡管理系统voidmenu()intv,w1;doprintf("tt*MENU*nn");printf("tttt1.card-maden");printf("tttt2.card-lifen");printf("tttt3.card-entern");printf("tttt4.card-browsen");printf("tttt5.exitn");printf("nntt*n");printf("Choiceyournumber(1-5):bb");scanf("%d",&v);if(v<1|v>5)w1=1;getchar();elsew1=0;while(w1=1);switch(v)case1:made();break;case2:life();break;case3:enter();break;case4:browse();break;case5:exit(0);2、各功能模块设计(1)制卡模块【数据结构】structcredicardintnumber;charname20;charID20;charword8;intflag;floataccount;intintegal;cardM;/*cardM中每个数组元素对应一个运动员信息*/【程序】voidmade()inti;charh20;doprintf("nntInputyournumber:<ttt>bbbbbbb");scanf("%s",h);if(strlen(h)!=6)printf("nnntt*Wrong!Inputagain*nn");continue;for(i=0;i<n;i+)if(strcmp(cardi.ID,h)=0)printf("nntt*Thenumberexist,inputagain*nn");break;while(strlen(h)!=6)|strcmp(cardi.ID,h)=0);cardn.number=n;strcpy(cardn.name,"*");strcpy(cardn.ID,h);strcpy(cardn.word,"000000");cardn.flag=0;cardn.account=0.00;cardn.integal=0;printf("nnntt*Thecardismade!*nn");print_one(n);n+;add();menu();print_one(n):显示一张卡信息的函数。【程序】voidprint_one(intj)printf("n|-|-|-|-|-|-|");printf("n|NO.|name|ID|flag|account|integal|");printf("n|-|-|-|-|-|-|");