1、网吧电影管理系统zuixin网吧电影管理系统 1课程设计的目的C语言课程设计是我们电子专业学生重要的实践性学习环节,只有在实践中我们才能找到问题,解决问题,才能学到更多有用的知识,为此我运用所学知识在TC上编了一个关于网吧电影管理的系统,它可以用来存放电影的信息,用来查看电影列表 ,能够实现输入电影,查找电影,修改信息,保存退出等简单的功能。另外,大多数操作系统书籍都没有给出实验内容,而在日益注重实践的今天,本程序也有助于学习枯燥的操作系统,加深对操作系统对内存管理的理解,为用C语言编写程序打下良好的基础。 2设计方案论证21设计思路:我运用结构体来存放电影的基本信息,运用自定义的list函数
2、来实现查看电影列表的功能,运用自定义的input函数来实现输入电影的功能,运用自定义的search函数来实现查找电影的功能,运用自定义的alter函数来实现修改信息的操作,其中还大量运用了选择语句,循环语句,还运用了文件指针。还运用了printf,scanf,getche等基本函数。22程序流程图:主程序流程图如下: 图2 输入电影流程图2、3程序如下:# include # include # define max 50struct filmchar name40;char num10;char kind30;char actor30;filmmax;typedef struct inode
3、char name40;char num10;char kind30;char actor30;struct inode *next;listnode,*linklist;linklist head=NULL,r=NULL;listnode *s,*p0,*p1,*p2,*p3,*p4,*p5,*p6,*p7;int i;char name110,ch;char str120;FILE *fp;void create()int j;long k;fp=fopen(film.txt,r+t);if(fp!=NULL) for(i=1;iname,filmi.name); strcpy(s-num
4、,filmi.num); strcpy(s-kind,filmi.kind); strcpy(s-actor,filmi.actor); if(head=NULL) head=s; else r-next=s; r=s; else fp=fopen(film.txt,w); i=1; void list() clrscr(); printf(n wan ba dian ying lie biao ru xia:); p1=head; while(p1!=NULL) printf(n mingcheng :%st bianhao :%stlixing :%st yan yuan :%st,p1-
5、name,p1-num,p1-kind,p1-actor); getch(); p1=p1-next; getch();void input() clrscr(); s=(linklist)malloc(sizeof(listnode); printf(n qing shu ru dian ying xin xi:); printf(nming cheng :); scanf(%s,s-name); printf(bian hao :); scanf(%s,s-num); printf(li xing :); scanf(%s,s-kind); printf(yan yuan :); scan
6、f(%s,s-actor); if(head=NULL) head=s; else r-next=s; r=s; printf(shu ru dian ying cheng gong); getch();void search()clrscr();printf(n qing shu ru dian ying ming cheng:);p0=head;gets(name1);while(strcmp(name1,p0-name)!=0&p0!=NULL)p0=p0-next;if(p0=NULL)printf(nzhe bu dian ying bu cun zai ,wu fa zhao da
7、o!);else printf(yi cha zhao dao ,dian ying xin xi ru xia:); printf(n ming cheng :%st bian hao :%st li xing :%st yan yuan :%st,p0-name,p0-num,p0-kind,p0-actor); getch(); void alter()int j;clrscr();printf(n qing shu ru yao xiu gai de dian ying ming cheng:);gets(name1);p3=head; while(strcmp(name1,p3-na
8、me)!=0&p3!=NULL) p3=p3-next; if(p3=NULL) printf(n zhe bu dian ying bu cun zai!);else printf(n qing shu ru xin de dian ying xin xi!);printf(n ming cheng :);scanf(%s,name1);strcpy(p3-name,name1);printf(n bian hao :);scanf(%s,name1);strcpy(p3-num,name1);printf(n li xing :);scanf(%s,name1);strcpy(p3-kin
9、d,name1);printf(n yan yuan :);scanf(%s,name1);strcpy(p3-actor,name1);printf(dian ying xing xi xiu gai cheng gong!); getch();void save()int j;fp=fopen(film.txt,w);for(p2=head,j=0;p2!=NULL;j+,p2=p2-next) strcpy(filmj.name,p2-name); strcpy(filmj.num,p2-num); strcpy(filmj.kind,p2-kind); strcpy(filmj.act
10、or,p2-actor); fwrite(&filmj,sizeof(struct film),1,fp); main()create();do clrscr(); printf(nn * huan ying shi yong * ); printf(nn * wang ba dian ying * ); printf(nn * guan li xi tong * ); printf(nn *06 xin an DiHongLiang zhi zuo); printf(nnt gong neng lie biao: ); printf(nnt 1.shu ru dian ying ); pri
11、ntf(nnt 2.dian ying lie biao ); printf(nnt 3.cha zhao dian ying ); printf(nnt 4.xiu gai xin xi ); printf(nnt 5.bao cun tui chu ); printf(nn qing xuan ze : ); ch=getche(); switch(ch) case 1 : input(); break; case 2 : list(); break; case 3 : search(); break; case 4 : alter(); break; case 5 : save(); f
12、close(fp); exit(0); break; default: printf(nnt* ); printf(nnt shu ru de xuan xiang bu zheng que ! ); printf(nnt* ); break; while(1);3.设计结果与分析31菜单信息界面图5 菜单该界面为菜单信息界面,通过switch语句,分别控制五个菜单,通过键盘输入数字即可实现各个功能块的操作。32输入电影界面在输入1按回车后会提示输入电影的名称,编号,类型,演员等信息,用户可以把要记得的信息进行输入。如图6所示。图6 输入电影界面电影基本信息存进struct film结构体中。
13、3.3电影列表界面在输入2按回车后进入电影列表界面,如下图所示:图7 电影列表界面该界面由while语句来控制循环34查找电影界面在输入3按回车后进入查找电影界面,如下图所示:图8 查找电影界面此时系统进入了search函数,查找电影,函数中有选择语句。若电影列表中存在此电影。 4.设计体会 经过一个星期的课程设计,使我对C语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对C语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对语言中经常
14、出现的错误也不了解,通过实践,使我在这几个方面的认识有所提高。 当然不仅仅是学习C语言,还是学习其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。同时在设计的过程中发现了其他的不足,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体,指针通过这次课程设计之后,一定把以前所学过的知识重新温故。而且,要想真正学好C语言的确是个不简单的事,它要求的不是每个人的天分,而是在于个人的努力成果,看来还真得下苦工夫了!明年学习数据结构我必须更加努力!5.参考文献1鲁沐浴.C语言最新编程技巧200例M.北京:电子工业出版社,1997.1:30-422 吕国英. C语言程序设计教程M.北京:龙门书局,2003.1:72-833 苏小红.C语言程序设计M.北京:电子工业出版社,2002.6:52-63
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1