1、课程设计汇报课程设计题目:机房收费管理系统 学 号:052112姓 名:刘名专 业:信息和计算科学班 级:信息131指导老师: 孙雪莲 3月18 日1 试验题目: 机房收费管理系统设计任务(1)输入功效:输入30名学生学号、班级、姓名、上机起止时间。(2)计算功效:计算每个学生上机费用。(上机费用=上机时间* 1.0/h ,不足一小时按一小时计算)(3)查询功效:按条件(班级、学号、姓名、上机时间)显示学生信息。2 试验时间,地点试验时间:15周试验地点:软件楼 2083 试验目标:经过对基础数据类型、语句、数组、函数、结构、指针和文件等操作,使学生全方面掌握结构化程序设计基础方法。4 试验要
2、求: 从课程设计目标出发,经过课程设计各个步骤,达成以下教学要求:(1)深入掌握C语言程序设计基础思想和方法;(2)掌握结构化程序设计基础原理及应用;5 试验思绪:需求分析:依据机房收费管理设计要求,需要设计三个功效,分别是输入功效,计算功效和查询功效。在输入功效方面,需要把学号、班级、姓名、上机时间等输入进系统中。在计算功效方面,需要计算出每个学生上机所用费用。在查询功效方面,要能够根据查询条件,查询出对应班级、学号、姓名、上机时间等学生信息。在设计工程中,把每个功效使用自定义函数方法书写,并最终用switch语句在主函数中调用,使用模块化设计总体思绪。上机费用班级步骤图为:上机时间姓名学号
3、计算查询主菜单输入上机时间姓名班级学号6 实现过程:#include /*I/O函数*/#include /*字符串函数*/#include /*标准库函数*/struct time /*定义时间结构*/int hour; /*时*/int minute; /*分*/;typedef struct STUDENT /*定义学生信息结构*/int no; /*学号*/char cla10; /*班级*/char name10; /*姓名*/int time_hour; /*上机时间*/int time_minute;struct time begin,end; /*嵌套时间结构*/;struct
4、 STUDENT student30;static int i =0; /*全局静态变量*/void insert(); /*输入功效函数*/void end_money(); /*结账功效函数*/void select_no(); /*学号查询功效函数*/void select_name(); /*姓名查询功效函数*/void select_cla(); /*班级查询功效函数*/int main() /*主函数*/int i;for(;) /*主菜单*/printf(tt*n);printf(tt*机房收费管理系统*n); printf(tt*n);printf(1.-输入学生信息:n);p
5、rintf(2.-结账:n);printf(3.-按学号查询:n);printf(4.-按班级查询:n);printf(5.-按姓名查询:n);printf(6.-退出系统:n);printf(nn编程人员:刘忠杨张鼎);printf(nn请选择功效:);scanf(%d,&i);switch(i)/*选择分支结构*/case 1: system(cls);insert();break;case 2:system(cls);end_money();break;case 3:system(cls);select_no();break;case 4:system(cls);select_cla()
6、;break;case 5: system(cls);select_name();break;case 6:return 0;system(pause); return 0;void insert() /*输入功效*/ printf(请输入学号:);scanf(%d,&studenti.no);printf(请输入姓名:);scanf(%s,&studenti.name);printf(请输入班级:);scanf(%s,&studenti.cla);printf(请输入上机时间:);scanf(%d:%d,&studenti.begin.hour,&studenti.begin.minute)
7、;i = i + 1;system(pause);system(cls);void end_money() /*计算功效*/int m,minute,hour; /*保留时间*/int no;printf(请输入学号:);scanf(%d,&no);for(m = 0;m i;m+)if(no = studentm.no)printf(请输入%d下机时间:,no);scanf(%d:%d,&studentm.end.hour,&studentm.end.minute);if(studentm.end.minute 0)hour = hour + 1;printf(上机时间为:%d:%d 费用为
8、:%d,studentm.time_hour,studentm.time_minute,hour);else printf(上机时间为:%d:%d 费用为:%d,studentm.time_hour,studentm.time_minute,hour);system(pause);system(cls);/*清屏*/Void select_no() /*按学号查询功效*/ int no;int m;printf(请输入学号:);scanf(%d,&no);for(m = 0;m i;m+)if(no = studentm.no) printf(学号为%dt,studentm.no); prin
9、tf(班级为%st,studentm.cla); printf(姓名为%st,&studentm.name); printf(上机开始时间为%d:%dt,studentm.begin.hour,studentm.begin.minute); printf(上机结束时间为%d:%dt,studentm.end.hour,studentm.end.minute); printf(上机时间为:%d:%dnt,studentm.time_hour,studentm.time_minute);else if( m = i)printf(没有该统计:n);system(pause);system(cls)
10、;/*清屏*/ void select_cla() /*按班级查询功效*/ char cla10;int m;printf(请输入班级:);scanf(%s,cla);for(m = 0;m i;m+)if(!strcmp(cla,studentm.cla) printf(学号为%dt,studentm.no); printf(班级为%st,studentm.cla); printf(姓名为%st,&studentm.name); printf(上机开始时间为%d:%dt,studentm.begin.hour,studentm.begin.minute); printf(上机结束时间为%d:
11、%dt,studentm.end.hour,studentm.end.minute); printf(上机时间为:%d:%dn,studentm.time_hour,studentm.time_minute);else if( m = i)printf(没有该统计:n);system(pause);system(cls);/*清屏*/ void select_name()/*按姓名查询功效*/ char name10;int m;printf(请输入姓名:);scanf(%s,name);for(m = 0;m i;m+)if(!strcmp(name,studentm.name)/*字符串比
12、较 非0为真实施*/ printf(学号为%dt,studentm.no); printf(班级为%st,studentm.cla); printf(姓名为%st,&studentm.name); printf(上机开始时间为%d:%dt,studentm.begin.hour,studentm.begin.minute); printf(上机结束时间为%d:%dt,studentm.end.hour,studentm.end.minute); printf(上机时间为:%d:%dn,studentm.time_hour,studentm.time_minute);else if( m = i
13、)printf(没有该统计:n);system(pause);system(cls);/*清屏*/7.试验总结: 依据机房收费管理系统需求分析和设计要求,这次经过C语言程序设计,实现了本系统基础功效,分别是信息输入,查询和计算。 即使实现了这三大基础功效,不过这次程序设计也还是存在着部分不足之处,因为是新接触编程设计,本身对于学习知识点也存在着部分模糊概念。所以,在对于程序模块化设计方面,认识也有待加强,代码变量使用过多,占用内存大,有很大优化方向。 在实现功效过程中,并没有用到指针和链表等高级C语言编程方法,这也是这次编程需要改善地方。8.心得体会经过对机房收费管理系统编写,愈加掌握了C语言基础语法,巩固了本学期所学C语言知识。同时在C设计过程中,对C语言利用循环,自定义函数等方面思想有了愈加深刻认识,体会到了高级编程强大,对以后编写程序有了很好初步认识。 经过这周课程设计,也认识到自己对于C语言部分不足之处,在对书本知识点还有些掌握不够透彻,在部分编程地方能够愈加优化代码,以最少代码实现最强大功效。在指针和链表方面,以后也还需要和老师同学探讨,让以后C语言编程中能够合理利用这些C语言里精华内容。