您好,欢迎访问三七文档
兰州商学院陇桥学院工学系课程设计报告课程名称:C语言课程设计设计题目:机房收费管理系统系别:工学系专业(方向):电子商务年级、班:2013级(1)班学生姓名:田斌学生学号:20130671130指导教师:刘纯芳2014年06月23日目录第一章课程设计的目的和要求...................................................................................................21.1课程设计目的.................................................................................................................21.2课程设计实现的要求.....................................................................................................2第二章课程设计任务内容...........................................................................................................3第三章主要函数介绍...................................................................................................................3第四章系统程序代码及注释.......................................................................................................44.1输入功能:输入30名学生的学号、班级、姓名、上机起始时间...........................44.2计算功能:计算每个下机学生的上机费用,每小时1元。(上机费用=上机时间*1.0/h,不足一小时按一小时计算)................................................................................44.3查询功能:按条件(班级、学号、姓名)显示学生的上机时间。.........................64.4机器使用情况的显示.....................................................................................................8第五章课程设计心得与体会.......................................................................................................9第一章课程设计的目的和要求1.1课程设计目的进一步巩固《C++程序设计》所学的知识,特别加强数组,指针,结构体,文件数据类型的应用,熟悉面向过程的结构化和面向对象可视化程序设计方法,培养结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解,锻炼程序设计的能力,以及用C/C++语言解决实际问题的能力,为以后后续课程的学习打好基础。此课程设计着眼于知识的运用,把平常学的知识运用到课程实践中来,本身就是考察我们知识运用能力。要求熟悉运用一些编程软件(如:MicrosoftVisualC++6.0),对我们所学的理论知识进一步的深化。1.2课程设计实现的要求《程序设计基础课程设计》是计算机科学与技术专业实践性环节之一,是学习完《程序设计基础》课程后进行的一次全面的综合练习。其目的是要达到理论与实际应用相结合,使学生能够使用所学的程序设计语言,根据具体案例的要求,组织数据,运用算法编写程序,以培养良好的程序设计技能。整个系统用VC++进行实现,用指针、链表来实现机房收费的数据结构设计,系统具有输入、计算、查询、使用情况、输出等功能。第二章课程设计任务内容目前,在部分高校中,计算机机房的上机收费仍然采用传统的人工计时方式,即学生凭有效证件前来上机,由机房管理人员手工登记开始时间和结束时间,然后按实际机时进行计算并收取相应费用。人工计时计费方式不但效率低,而且容易出错,也不利于定期的统计工作。随着高校学生人数的不断增加,这些工作的难度和强度也不断加大,给机房管理部门带来了很大的压力。本课程设计要求实现机房收费管理系统,具体任务如下:题目:机房收费管理系统(1)输入功能:输入30名学生的学号、班级、姓名、上机起始时间。(2)计算功能:计算每个下机学生的上机费用,每小时1元。(上机费用=上机时间*1.0/h,不足一小时按一小时计算)(3)查询功能:按条件(班级、学号、姓名)显示学生的上机时间。(4)机器使用情况的显示。第三章主要函数介绍Main-menu函数:输出机房管理系统菜单Input函数:输入若干学生的学号、班级和姓名及上机时间。Online函数:学生上机,输入上机学生学号或姓名及时间。Calculator函数:计算上机费用并输出Offline函数:学生下机时间,调用calculator函数得到上机费用。Search函数:查找学生上机信息。Display函数:显示全部机器的使用信息。Main函数:函数调用以及结束程序.第四章系统程序代码及注释4.1输入功能:输入30名学生的学号、班级、姓名、上机起始时间#includetime.h#includestdio.h#includestring.h#includeWindows.h#defineN20#defineM100structstudent{charid[N];chartheclass[N];charname[N];charontime[N];}student[M];intn;voidaddition(){inti;printf(\n请输入录入学生信息的总数:);scanf(%d,&n);for(i=1;i=n;i++){printf(\n\t请输入第%d个学生学号(20s):,i);scanf(%s,student[i-1].id);printf(\n\t请输入第%d个学生班级(20s):,i);scanf(%s,student[i-1].theclass);printf(\n\t请输入第%d个学生姓名(20s):,i);scanf(%s,student[i-1].name);printf(\n\t请输入第%d个学生上机时间(20s)(例:02):,i);scanf(%s,student[i-1].ontime);printf(\n\t提示:您已成功录入第%d条信息\n,i);}}4.2计算功能:计算每个下机学生的上机费用,每小时1元。(上机费用=上机时间*1.0/h,不足一小时按一小时计算)voidcalculate(){inthours;chartimes[30];time_trawtime;structtm*timeinfo;time(&rawtime);timeinfo=localtime(&rawtime);strcpy(times,asctime(timeinfo));printf(\t所有学生上机费用如下:\n);for(inti=1;i=n;i++){printf(学生%d费用:,i);if((student[i-1].ontime[3]-48)*10+student[i-1].ontime[4](times[14]-48)*10+times[15])hours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1];elsehours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1]+1;printf(%d\n,hours);}}voidcalculate(){inthours;chartimes[30];time_trawtime;structtm*timeinfo;time(&rawtime);timeinfo=localtime(&rawtime);strcpy(times,asctime(timeinfo));printf(\t所有学生上机费用如下:\n);for(inti=1;i=n;i++){printf(学生%d费用:,i);if((student[i-1].ontime[3]-48)*10+student[i-1].ontime[4](times[14]-48)*10+times[15])hours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1];elsehours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1]+1;printf(%d\n,hours);}}4.3查询功能:按条件(班级、学号、姓名)显示学生的上机时间。voidsearch(){inti,b,c,count;do{charfind[20];printf(\n请选择查询方式:1.根据学号查询;2.根据班级查询;3.根据姓名查询;4.根据上机时间:);scanf(%d,&b);switch(b){case1:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf(\n**请输入学生的学号:);scanf(%s,find);for(i=0;in;i++){if(strcmp(student[i].id,find)==0){count++;if(count==PF_FLOATING_POINT_EMULATED)printf(学生学号\t学生班级\t学生姓名\t上机时间\n);printf(%8s%15s%15s%17s,student[i].id,student[i].theclass,student[i].name,student[i].ontime);}}if(!count)printf(****提示:该生不存在);gotoA;case2:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf(\n**请输入学生的班级:);scanf(%s,find);for(i=0;in;i++){if(strcmp(student[i].theclass,find)==0){count++;if(count==PF_FLOATING_POINT_EMULATED)printf(学生学号\t学生班级\t学生姓名\t上机时间\n);printf(%8s%15s%15s%17s,student[i].id,student[i].theclass,student[i].name,student[i].ontime);}}if(!count)printf(****提示:该生不存在);gotoA;case3:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf(\n**请输入学生的姓名:);scanf(%s,find);for(i=0;in;i++){if(strcmp(student[i].name,find)==0){count++;if(count==PF_FLOATING_POINT_EMULATED)p
本文标题:C语言课程设计
链接地址:https://www.777doc.com/doc-4155755 .html