1、机房收费管理系统课程设计九月整理课程设计报告课程设计题目:机房收费管理系统学 号:2013052112姓 名:刘名业:信息与计算科学班 级:信息131 指导教师:孙雪莲2015年3月18日1. 实验题目:机房收费管理系统设计任务(1) 输入功能:输入30名学生的学号、班级、姓名、上机起 止时间。(2) 计算功能:计算每个学生的上机费用。(上机费用二上机时间* 1.0/h ,不足一小时按一小时计算)(3) 査询功能:按条件(班级、学号、姓名、上机时间)显示 学生信息。2. 实验时间,地点实验时间:15周实验地点:软件楼2083实验目的:通过对基本数据类型、语句、数组、函数、结构、指针以及文件等的
2、操作,使学生全而掌握结构化程序设计的基木方法。4. 实验要求:从课程设计的目的出发,通过课程设计的各个环节,达到以下 教学要求:(1)进一步掌握c语言程序设计的基本思想和方法;(2)掌握结构化程序设计的基木原理及应用;5. 实验思路:需求分析:根据机房收费管理设计的要求,需要设计三个功能, 分别是输入功能,计算功能和查询功能。在输入功能方面,需要把学号、班级、姓名、上机时间等输入 进系统中。在计算功能方而,需要计算出每个学生的上机所用的费用。在查询功能方面,要能够按照查询条件,查询出相应的班级、 学号、姓名、上机时间等学生信息。在设计工程中,把每个功能使用自定义函数的方式书写,并 最后用swi
3、tch语句在主函数中调用,使用模块化设计的总体 思路。流程图为:查询 计算主菜单1输入/*I/O 函数*/*字符串函数*/*标准库函数*/*定义时间结构*/* 时 */* 分 */*定义学生信息结构*/*学号*/*班级*/*姓名*/*上机时间*/*嵌套时间结6- 实现过程:#include#include#includestruct timeint hour;int minute;typedef struct STUDENTint no;char cla10;char name 10;int time_hour;int time_minute;struct time begin,end;构*/
4、;struct STUDENT student30;static int i =0;/*全局静态变量*/void insert();void end_money();void select_no();void select_name();void select_cla();int main()inti;for(;)/*输入功能函数*/*结账功能函数*/*学号查询功能函数勺/*姓名查询功能函数*/*班级查询功能函数*/*主函数*/*主菜单*/printf(Mtt * *n)printf(Htt * 机房收费管理系统 *nj;pri ntf(ntt * *n )输入学生信息:nj;printf(M
5、2.printf(M3.按学号查询:F);printf(M4.按班级查询:r);printf(M5.按姓名查询:nj;printf(H6.退出系统:nH);printf(HnnAAAAAAAAAAAAAAAAAAAAAAA 编程人员:刘忠杨小八张鼎AAAAAAAAAAAAAAAAAAAAAAAAAAAA11).scanf(u%dH,&i);switch(i)/*选择分支结构*/ case 1:systemCcls11);insert(); break;case 2:system(cls,f); end_money(); break;case 3:system(” cis”);select_no
6、(); break;case 4:system(nclsu);select_cla(); break;case 5:system(,clsn); select_name(); break;case 6:return 0;system(HpauseM);return 0;void insert() /*输入功能*/printf(请输入学号:”);scanf(M%d,&studenti.no);scanf(M%sH,&studenti.name);printf(u请输入班级:”);scanf(%s,&studenti.cla);printf(请输入上机时间:”);scanf(M%d:%d,&stu
7、denti.begin.hour,&studenti.begin.minute);i = i + 1;system(Hpausen);system(nclsH);void end_money() /*计算功能*/*保存时间*/int m,minute,hour;int no;printf(M请输入学号:”);scanf(H%dM,&no);for(m = 0;m i;m+)if(no = studentm.no)scanf(M%d:%dM,&studentm .end.hour,&studentm.end.minute);if(studentm.end.minute 0) hour = hou
8、r + 1;printf(u上机时间为:%d:%d 费用 为:%dn,studentm.time_hour,studentm.time_minute,hour);elseprintf(M上机时间为:%d:%d 费用为: %dM,studentm.time_hour,studentm.time_ininute,hour);system(npauseH);system(cls);/* 清屏 */select_no()Void八按学号查询功能*/int no;int in;printf(”请输入学号:”);scanf(%d,&no);for(m = 0;m i;m+)if(no = studentm
9、.no)printf(u 学号为 %dtH,studentm.no);printf(u 班级为 %st,studentm.cla);printf(姓名为 %st,&studentm .name);printfC* 上 机 开 始 时 间/%d:%dt,studentm.begin.hour,studentm.begin.minute);printfC* 上 机 结 束 时 间9%d:%dtn,studentm.end.hour,studentm.end.minute);printf( 上 机 时 间为:%d:%dntn,studentm.time_hour,studentm.time_minu
10、te);else if( m = i)printf(M没有该记录:n”);system(HpauseM);system(clsn);/* 清屏 */select_cla()void/*按班级查询功能勺char cla10;int m;printf(-请输入班级:”);scanf(%s,cla);for(m = 0;m i;m+)if(!strcmp(cla,studentm.cla)printf(u 学号为 %dtH,studentm.no);printf(班级为 %st,studentm.cla);printf(u 姓名为 %st,&sUidcntm.name);printf( 上 机 开
11、始%d:%dt,studentm.begin.hour,studentm.begin.minute);printf( 上 机 结 束 时 间 9%d:%dtn,studentm.end.hour,studentm.end.minute);printf( 上 机 时 间为:%d:%dn,studentm.time_hour,studentm.time_minute);else if( m = i)printf(”没有该记录:n”);system(pauseM);system(cls);/* 清屏 */void select_name()/*按姓名查询功能*/char name10;int m;p
12、rintf(H请输入姓名:“);scanf(%s,name);for(m = 0;m i;m+)if(!strcmp(name,studentm.name)/*字符串的比较 非 0 为真 执行*/printf(u 学号为 %dtH,studentm.no);printf(u 班级为 %st,studentm.cla);printf(姓名为 %st,&student m .name);printf( 上 机 开 始 时 间9%d:%dt,studentm.begin.hour,studentm.begi nninute);printfC* 上 机 结 束 时 间9%d:%dt,studentm.
13、end.hour,studentm.end.minute);printf( 上 机 时 间为:%d:%dn,studentm.time_hour,studentm.time_minute);else if( m = i)printf(M没有该记录:n”);system(pause);system(clsn);/* 清屏 */7 实验总结:根据机房收费管理系统的需求分析和设计要求,这次通过c语言 程序设计,实现了本系统的基本功能,分别是信息的输入,查询和计 算。虽然实现了这三大基本功能,但是这次的程序设计也还是存在着一 些不足之处,由于是新接触编程设计,自身对于学习的知识点也存在 着一些模糊的概
14、念。所以,在对于程序的模块化设计方而,认识也有 待加强,代码变量使用过多,占用内存大,有很大的优化方向。在实现功能的过程中,并没有用到指针和链表等高级c语言编程 方式,这也是这次编程需要改进的地方。&心得体会通过对机房收费管理系统的编写,更加掌握了 C语言的基木语法, 巩固了本学期所学的C语言知识。同时在C的设计过程中,对C语言 运用循环,自定义函数等方面的思想有了更加深刻的认识,体会到了 高级编程的强大,对以后编写程序有了很好的初步认识。通过这周的课程设计,也认识到自己对于C语言的一些不足之处, 在对书木的知识点还有些掌握的不够透彻,在一些编程的地方可以更 加优化代码,以最少的代码实现最强大的功能。在指针和链表方而, 以后也还需要和老师同学探讨,让以后的C语言编程中能够合理的运 用这些C语言里的精华内容。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1