您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 电影俱乐部管理系统(C语言报告)
第1页共27页哈尔滨学院软件学院课程设计说明书题目:电影俱乐部院(系)软件学院专业软件工程年级2013级姓名袁祯阳学号13031526指导教师杨玲职称2014年7月22日第2页共27页目录摘要-------------------------------------------------------------------------------------------------------3第一章需求分析---------------------------------------------------------------------------------------41.1系统目的------------------------------------------------------------------------------------------------------------41.2系统功能图---------------------------------------------------------------------------------------------------------4第二章概要设计-----------------------------------------------------------------------------------------52.1整体设计-----------------------------------------------------------------------------------------------------------5第三章详细设计-----------------------------------------------------------------------------------------9第五章系统测试运行--------------------------------------------------------------------------------235.1测试目的----------------------------------------------------------------------------------错误!未定义书签。5.2测试方案----------------------------------------------------------------------------------错误!未定义书签。5.3测试内容----------------------------------------------------------------------------------错误!未定义书签。总结------------------------------------------------------------------------------------------------------27第3页共27页摘要C语言是一种编译型程序设计语言,编程设计是学习该语言的一个重要环节。通过温习已学的知识,在上机实践中熟悉C语言的编程环境,进而达到能够编写较复杂程序并将其实际应用的程度。在实际编程中不断地深入学习数据结构、算法、编译原理、操作系统原理、软件工程等知识,加深对C语言的理解,切实提高编程水平,这是C语言课程设计的主要目的。关键词:C语言,课程设计第4页共27页第一章需求分析1.1系统目的DVD信息和俱乐部会员信息用文件存储,因而要提供文件的输入输出操作;要注册新会员,因而要提供文件的添加操作;实现缴纳费用,因而要提供文件的修改操作;要浏览信息因而要提供显示操作;要实现查询则要提供文件的查找操作;另外要提供键盘式选择菜单以实现功能选择。1.2系统功能图第5页共27页第二章概要设计2.1整体设计整体设计为登录模块、会员模块、管理员模块。会员模块包括会员注册模块、会员充值模块、会员租用DVD模块、会员归还DVD模块、DVD浏览模块、会员信息模块。管理模块包括会员管理模块、DVD管理模块。采用文件管理信息,建立两个文件:DVD信息文件和会员信息文件。(实际还有管理员文件,但应不做过多要求所以其功能如修改管理员密码有所忽略,但代码有保留,可以随时添加)数据结构采用结构体://DVD信息结构体StructDVDInfo{CharNo[10];//DVD编号Charname[10];//DVD名字Intstate;//DVD状态:0表示已借出,1表示可出借}Dvd[200];//会员信息结构体StructMemberInfo{CharNo[10];//会员编号Charname[10];//会员姓名Charpassword[20];//会员密码Floatbalance;//账户余额DIborrowDVD[3];//所借DVD信息;Intstate;//表示租用DVD的数目,取值为0-3}Mem[200];电影俱乐部登陆模块充值模块管理员模块会员模块租用模块注册模块信息模块浏览模块归还模块会员管理模块DVD管理模块添加模块搜索模块修改模块排序模块搜索模块修改模块第6页共27页2.2模块设计2.2.1登陆模块否是是否登录会员登陆输入会员名输入管理员账号管理员登陆打开“member.txt”读取会员信息有无此会员?密码正确?有无此帐号?密码正确?输入密码是否继续登陆错误密码次数3?进入会员模块输入密码进入管理员模块退出系统第7页共27页2.2.2会员模块选择充值会员登陆成功注册模块查重输入编号输入充值数输入租借的DVD编号保存文件输入会员其他信息打开会员和DVD文件打开“member.txt”读取会员信息打开会员和DVD文件打开“member.txt”读取会员信息打开“dvd.txt”读取会员信息打开“member.txt”读取会员信息充值模块租借模块归还模块浏览模块信息模块修改会员及DVD状态信息修改会员信息输入归还数显示所有DVD信息浏览该会员信息显示DVD信息保存文件保存文件保存文件保存文件保存文件修改用户名输入归还DVD编号修改会员及DVD状态信息修改密码是否继续?返回相应界面第8页共27页2.2.3管理员模块管理员登陆成功DVD管理会员管理打开“dvd.txt”读取会员信息打开“member.txt”读取会员信息排序搜索修改该会员全部信息添加DVD查重按编号搜索DVD保存文件输入编号输入其他信息保存文件保存文件按编号排序按会员名查找按余额排序显示所有会员信息按编号查找是否修改是否修改修改编号修改名称修改状态返回相应界面是否继续?第9页共27页第三章详细设计3.1登陆模块3.11会员登陆intLogin1(){structMembera;inti,n,b,k,t=0;fflush(stdin);system(cls);n=loadM();printf(*******************欢迎使用DVD信息管理系统**********************\n);printf(\n请输入会员名:);scanf(%s,a.name);for(i=0;i=n;i++)if(strcmp(a.name,Mem[i].name)==0){t=1;printf(\n请输入会员密码:);scanf(%s,a.password);if(strcmp(a.password,Mem[i].password)==0)menu1(i);第10页共27页elseprintf(密码错误);printf(请选择\n1.继续登录\n2.返回\n);do{scanf(%d,&b);if(b1||b2){k=1;printf(输入编号错误,请再次输入\n);}elsek=0;}while(k==1);if(b==1)Login1();elsemain();}if(t==0)printf(会员名输入错误\n);printf(请选择\n1.继续登录\n2.返回\n);do{scanf(%d,&b);if(b1||b2){k=1;printf(输入编号错误,请再次输入\n);}elsek=0;}while(k==1);if(b==1)Login1();elsemain();return0;}3.12管理员登陆intLogin2(){uifoinfo;charpw[100]={0},pw_confirm[100]={0};intwt=0;system(cls);memset(&info,0,sizeofinfo);read_data(&info);printf(*******************欢迎进入电影俱乐部**********************\n);while(1){printf(请输入管理员账号\n);scanf(%s,pw);if(strcmp(pw,info.name)!=0){printf(无此管理员\n);continue;}printf(请输入密码\n);scanf(%s,pw);if(strcmp(pw,info.pw)!=0)printf(密码错误\n);elsemenu2();wt++;if(wt=3){printf(3timespassworderror,exit!\n);return-1;}}第11页共27页3.2会员模块3.21会员注册模块提示输入用户信息:会员编号(昵称),会员姓名,密码。将把新的会员信息添加到会员信息文件中,并把账户余额初始化为0,所借DVD信息初始化为空。intRegister(){inta,i,n,j,b,k;structMembers;system(cls);fflush(stdin);printf(请输入增加会员档案的个数:);scanf(%d,&a);n=loadM();for(i=n;in+a;i++){k=0;第12页共27页if(n==0){printf(请输入会员编号:);scanf(%s,Mem[i].No);}else{while(k==0){printf(请输入会员编号:);//调用加载函数n=load()scanf(%s,s.No);for(j=0;ji;j++){if(strcmp(s.No,Mem[j].No)==0){printf(会员编号已存在\n);k=0;break;}else{strcpy(Mem[i].No,s.No);k=1;}}};}printf(请输入会员名:);scanf(%s,Mem[i].name);printf(请输入会员密码);scanf(%s,Mem[i].password);Mem[i].balance=0;Mem[i].dvd1=Mem[i].dvd2=Mem[i].dvd3=0;Mem[i].state=0;saveM(n+a);printf(\n\n);}printf(请选择\n1.继续注册\n2.返回\n);do{scanf(%d,&b);if(b1||b2){k=1;printf(输入编号错误,请再次输入\n);}elsek=0;}while(k==1);if(b==1)Register();elsemain();}3.22会员充值模块提示输入交费金额,则在会员信息文件中修改其账户余额。voidPayment(inti)//充值模块{intn,b,j;floatk;system(cls);n=loadM();printf(请输入充值数);scanf(%f,&k);Mem[i].balance=k+Mem[i].balance;saveM(n);printf(请选择\n1.继续充值\n2.返回\n);do{scanf(%d,&b);if(b1||b2){k=1;printf(输入编号错误,请再次输入\n);}elsek=0;}while(k==1);if(b==1)Payment(i);else
本文标题:电影俱乐部管理系统(C语言报告)
链接地址:https://www.777doc.com/doc-2212863 .html