欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    C语言课程设计电影俱乐部程序设计.docx

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

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

    C语言课程设计电影俱乐部程序设计.docx

    C语言课程设计电影俱乐部程序设计学 院: 专 业: 姓 名: 学 号: 指导老师: 前 言 C语言作为一门最通用的语言,在过去很流行,将来依然会如此。几乎每一个理工科或者其他专业的学生毫不例外地要学习它。记得大学里,很多学校都把谭浩强教授的C程序设计作为入门教材,这是绝佳的选择。然而,要更进一步,更全面而深入地学习呢?显然有点力不从心。本书正是为了弥补这个缺憾而写的,希望能对想比较全面而深入学习C语言程序设计的人有所帮助。 从C语言产生到现在,它已经成为最重要和最流行的编程语言之一。在各种流行编程语言中,都能看到C语言的影子,如Java的语法与C语言基本相同。学习、掌握C语言是每一个计算机技术人员的基本功之一。 C语言具有高级语言的强大功能,却又有很多直接操作计算机硬件的功能,因此,C语言通常又被称为中级语言。学习和掌握C语言,既可以增进对于计算机底层工作机制的了解,又为进一步学习其他高级语言打下了坚实的基础 从入门到精通:本书分上下两篇,上篇针对初学者,从C语言的基础开始,使略有计算机基础的人都能容易地学会C语言编程。下篇则介绍了C语言的高级程序设计技巧,包括常用算法、底层控制鼠标、绘图、加密、压缩等应用。 适用多种操作系统:本书实例都通过GCC编译器调试,读者不仅可在Windows环境下使用本书学习C语言,也可在Linux环境下使用本书学习C语言。循序渐进:本书编写顺序按C语言的知识点循序渐进地介绍。例如,先介绍数据的存储,再介绍数据的输入/输出;先介绍简单的程序设计概念,再介绍指针等C语言的难点。重点突出:指针是C语言的重点和难点,本书用了大量的篇幅,从不同方面对其进行讲解,并列举了大量的实例,帮助读者理解并掌握指针 目 录 一、题目要求 4 二、需求分析 三、总体设计 四、设计图框 五、详细设计 六、程序运行 七上机操作 八、总、结 4 4 5 5 6 17 21 一电影俱乐部 1题目要求 )要求 允许俱乐部成员租用DVD.若想成为会员,首先应签约并且按月交纳费用。会员一次可租用三个DVD,没有时间限制。可浏览所有可租用的DVD,能实现新成员的开户、会员对其账户状况的查询以及俱乐部管理者对其所交易情况的查看功能。 )提示 需求分析:DVD信息和俱乐部会员信息用文件存储,提供文件的输入输出操作;注册新会员,提供文件的添加操作;实现按月缴纳费用,提供文件的修改操作;浏览信息提供显示操作;实现查询提供文件的查找操作;另外提供键盘式选择菜单以实现功能选择。 总体设计:整体设计为会员注册模块、会员交费模块、会员租用DVD模块、会员归还DVD模块、信息浏览模块和信息查询模块等。 2需求分析 ) 应用程序运行后,在屏幕上显示一个菜单。用户可以根据需求,选定相应的操作项目。进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。 ) 应用程序运行后,要在屏幕上显示一个菜单; 要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。 3总体设计 根据需求分析,可以对这个系统的设计分为以下几个模块: 欢迎界面 主菜单 建立新档案注册会员缴纳会费会员信息浏览信息查询退出4详细设计 1)宏定义 #include <stdio.h> #include <string.h> #include <stdlib.h> #include <math.h> #include <time.h> int n,n1; /* 全局*/ int N3;/* 记录着上次建立的档案数,从新运行程序时,不会丢上次信息*/ int yuefei=30; menu1; quit; menu2; menu3; create;/*建立档案 */ add; /* 增加信息*/ monfei; dvd; search1; search2; printhuiyuan; printdvd; moon; struct dvdA char name20; int num; int sex; int huifei; int day; int dvd1; int dvd2; int dvd3; stu1100; struct dvdB int num; char name20; int k; dd1100; 2)主函数 主函数一般设计得比较简洁,只提供输入输出和功能处理的函数调用。其各功能模块用菜单方式选择。本题将main函数体内的界面选择部分语句单独抽取出来作为一独立函数,目的在于系统执行完每部分功能模块后能够方便返回到系统界面。 main printf("*欢迎使用dvd信息管理系统*n"); printf("nnnn请输入管理员密码:"); if(check) menu1; else printf(" 密码输入错误n"); printf(" *你无权使用本系统*n"); quit; )各功能模块 密码验证模块 int check char a20,str="123" int count; for(count=0;count<3;count+) gets(a); if(strcmp(a,str)=0) return 1 ; else continue; return 0; 主菜单功能选择模块 int menu1 FILE *fp1; int a; if(fp1=fopen("n.txt","a+")=NULL) printf("cannot open file"); exit(0); fread(&N1,sizeof(int),1,fp1); fread(&N2,sizeof(int),1,fp1); fclose(fp1); n=N1; n1=N2; moon; printf("n 1. 建立新档案n"); printf("n 2. 注册会员n"); printf("n 3. 缴纳会费n"); printf("n 4. 会员dvdn"); printf("n 5. 信息浏览n"); printf("n 6. 信息查询n"); printf("n 7. 退出n"); printf("nnn请选择编号:"); scanf("%d",&a); switch(a) case 1: create; menu1;break; case 2: add; menu1; break; case 3: monfei;menu1;break; case 4: dvd;menu1;break; case 5: menu2;break; case 6: menu3;break; case 7: quit;break; default: printf("输入编号错误n"); menu1; 子菜单功能选择模块 int menu2 int a; printf(" 信息浏览n"); printf("n 1.会员信息浏览n"); printf("n 2.dvd信息浏览n"); printf("n 3.返回上级菜单n"); printf("nnn请输入编号:"); scanf("%d",&a); switch(a) case 1: printhuiyuan;break; case 2: printdvd;break; case 3: menu1;break; default:printf("输入编号错误n"); menu2; 建立新档案模块 create FILE *fp,*fp1; int i; struct dvdA stu2100; struct dvdB dd2100; int y,m,d,s1; time_t timep; struct tm *p; time(&timep); p=localtime(&timep); /*取得当地时间*/ m=1+p->tm_mon; d=p->tm_mday; s1=m*30+d; printf("请输入档案的个数:"); scanf("%d",&n); N0=n; for(i=0;i<n;i+) printf("请输入会员名:"); scanf("%s",&stu1i.name); printf("请输入会员编号; "); scanf("%d",&stu1i.num); printf("请输入会员性别:男1女2:"); scanf("%d",&stu1i.sex); printf("请输入充入的会费:"); scanf("%d",&stu1i.huifei); stu1i.day=s1; stu1i.dvd1=stu1i.dvd2=stu1i.dvd3=0; getchar; if(fp=fopen("huiyuan.txt","w+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fwrite(&stu1i,sizeof(struct dvdA),1,fp); fclose(fp); if(fp=fopen("huiyuan.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fread(&stu2i,sizeof(struct dvdA),1,fp); printf("姓名 编号 性别 会费 n"); printf("%4s,%5d,%5d,%4dn", stu2i.name,stu2i.num,stu2i.sex,stu2i.huifei); fclose(fp); printf("请输入dvd档案的个数:"); scanf("%d",&n1); N2=n1; for(i=0;i<n1;i+) printf("请输入dvd编号:"); scanf("%d",&dd1i.num); printf("请输入dvd名; "); scanf("%s",&dd1i.name); dd1i.k=1; getchar; if(fp=fopen("dvd.txt","w+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n1;i+) fwrite(&dd1i,sizeof(struct dvdB),1,fp); fclose(fp); if(fp=fopen("dvd.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n1;i+) fread(&dd2i,sizeof(struct dvdB),1,fp); printf(" 编号 dvd名 数量n"); printf("%4d,%5s %dn", dd2i.num,dd2i.name,dd2i.k); fclose(fp); if(fp1=fopen("n.txt","w+")=NULL) printf("cannot open file"); exit(0); fwrite(&N0,sizeof(int),1,fp1); fwrite(&N2,sizeof(int),1,fp1); fclose(fp1); 注册会员模块 add FILE *fp,*fp1; int i,a; struct dvdA stu2100; int m,d,s1; time_t timep; struct tm *p; time(&timep); p=localtime(&timep); /*取得当地时间*/ m=1+p->tm_mon; d=p->tm_mday; s1=m*30+d; printf("请输入增加会员档案的个数:"); scanf("%d",&a); for(i=n;i<(n+a);i+) printf("请输入会员名:"); scanf("%s",&stu1i.name); printf("请输入会员编号:" ); scanf("%d",&stu1i.num); printf("请输入会员性别:男1女2:"); scanf("%d",&stu1i.sex); printf("请输入初始的会费:"); scanf("%d",&stu1i.huifei); stu1i.day=s1; stu1i.dvd1=stu1i.dvd2=stu1i.dvd3=0; getchar; if(fp=fopen("huiyuan.txt","a+")=NULL) printf("cannot open file"); exit(0); for(i=n;i<(n+a);i+) fwrite(&stu1i,sizeof(struct dvdA),1,fp); fclose(fp); n=n+a; if(fp=fopen("huiyuan.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fread(&stu2i,sizeof(struct dvdA),1,fp); printf("姓名 编号 性别 会费 n"); printf("%4s,%5d,%5d,%4dn", stu2i.name,stu2i.num,stu2i.sex,stu2i.huifei); fclose(fp); N0=n; if(fp1=fopen("n.txt","w+")=NULL) printf("cannot open file"); exit(0); fwrite(&N0,sizeof(int),1,fp1); fclose(fp1); 缴纳会费模块 monfei FILE *fp,*fp1; int i,c; char name20; struct dvdA stu2100; printf("n请输入会员姓名:n"); scanf("%s",&name); if(fp=fopen("huiyuan.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fread(&stu2i,sizeof(struct dvdA),1,fp); c=strcmp(name,stu2i.name); if(c=0) printf("姓名 编号 性别 会费 dvd1 dvd2 dvd3 n"); printf("%4s,%5d,%5d,%4d %4d %4d %4dn", stu2i.name,stu2i.num,stu2i.sex,stu2i.huifei,stu2i.dvd1,stu2i.dvd2,stu2i.dvd3); printf("请输入你要充入会费n"); scanf("%d",&stu2i.huifei); fclose(fp); if(fp=fopen("huiyuan.txt","w+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fwrite(&stu2i,sizeof(struct dvdA),1,fp); fclose(fp); 会员DVD信息模块 dvd FILE *fp,*fp1; int i,c; char name20; struct dvdA stu2100; printf("n请输入会员姓名:n"); scanf("%s",&name); if(fp=fopen("huiyuan.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fread(&stu2i,sizeof(struct dvdA),1,fp); c=strcmp(name,stu2i.name); if(c=0) printf("姓名 编号 性别 会费 dvd1 dvd2 dvd3 n"); printf("%4s,%5d,%5d,%4d %4d %4d %4dn", stu2i.name,stu2i.num,stu2i.sex,stu2i.huifei,stu2i.dvd1,stu2i.dvd2,stu2i.dvd3); printf("请输入你要修改后的dvd1编号:"); scanf("%d",&stu2i.dvd1); printf("n请输入你要修改后的dvd2编号:"); scanf("%d",&stu2i.dvd2); printf("n请输入你要修改后的dvd3编号:"); scanf("%d",&stu2i.dvd3); fclose(fp); if(fp=fopen("huiyuan.txt","w+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fwrite(&stu2i,sizeof(struct dvdA),1,fp); fclose(fp); menu1; 信息浏览模块 moon FILE *fp; int i; struct dvdA stu2100; int m,d,s1,s2; time_t timep; struct tm *p; time(&timep); p=localtime(&timep); /*取得当地时间*/ m=1+p->tm_mon; d=p->tm_mday; s1=m*30+d; if(fp=fopen("huiyuan.txt","a+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fread(&stu2i,sizeof(struct dvdA),1,fp); s2=(s1-stu2i.day)/30; if(s2>0) stu2i.huifei=stu2i.huifei-yuefei*s2; stu2i.day=s1; fclose(fp); if(fp=fopen("huiyuan.txt","w+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fwrite(&stu2i,sizeof(struct dvdA),1,fp); fclose(fp); printhuiyuan FILE *fp; int i; struct dvdA stu2100; if(fp=fopen("huiyuan.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fread(&stu2i,sizeof(struct dvdA),1,fp); printf("姓名 编号 性别 会费 n"); printf("%4s,%5d,%5d,%4dn", stu2i.name,stu2i.num,stu2i.sex,stu2i.huifei); fclose(fp); menu2; printdvd FILE *fp; int i; struct dvdB dd2100; if(fp=fopen("dvd.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n1;i+) fread(&dd2i,sizeof(struct dvdB),1,fp); printf(" 编号 dvd名 数量n"); printf("%4d,%5s %4dn", dd2i.num,dd2i.name,dd2i.k); fclose(fp); menu2; 信息查询模块 search1 FILE *fp,*fp1; int i,c; char name20; struct dvdA stu2100; printf("n请输入会员姓名:n"); scanf("%s",&name); if(fp=fopen("huiyuan.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n;i+) fread(&stu2i,sizeof(struct dvdA),1,fp); c=strcmp(name,stu2i.name); if(c=0) printf("姓名 编号 性别 会费 dvd1 dvd2 dvd3 n"); printf("%4s,%5d,%5d,%4d %4d %4d %4dn", stu2i.name,stu2i.num,stu2i.sex,stu2i.huifei,stu2i.dvd1,stu2i.dvd2,stu2i.dvd3); break; fclose(fp); menu3; search2 FILE *fp,*fp1; int i,c; struct dvdB dd2100; printf("n请输入dvd编号:n"); scanf("%d",&c); if(fp=fopen("dvd.txt","r+")=NULL) printf("cannot open file"); exit(0); for(i=0;i<n1;i+) fread(&dd2i,sizeof(struct dvdB),1,fp); if(c=dd2i.num) printf(" 编号 dvd名 数量n"); printf("%4d,%5s %dn", dd2i.num,dd2i.name,dd2i.k); break; fclose(fp); menu3; menu3 int a; printf("n 信息查询n "); printf("n 1.按会员名查找n"); printf("n 2.按dvd查找n"); printf("n 3.返回上级菜单 n"); printf("nnn请输入编号:"); scanf ("%d",&a); switch (a) case 1: search1;break; case 2: search2;break; case 3: menu1;break; default:printf("输入编码错误n");menu3; 退出模块 quit char ch; printf("n真的要退出?(Y/N)"); scanf("%c",&ch); if(ch='Y'|ch='y') printf("n谢谢使用!_"); exit(0); menu1; 上机操作 各模块截图如下: 1)密码验证模块 2)主菜单功能选择模块 3)建立新档案模块 4)注册新会员模块 5)缴纳会费模块 6)会员DVD模块 7)信息浏览 8)信息查询 9)退出系统 三总结 通过本次的课程设计,我了解到自己在C程序领域还有许多的欠缺之处,通过和同学的相互探讨,还有老师的指导,我对C语言有了更加深入的了解,会编写简单的程序。这次实习也激发起了我对C程序的兴趣。

    注意事项

    本文(C语言课程设计电影俱乐部程序设计.docx)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开