c语言编程机房收费管理系统.docx
《c语言编程机房收费管理系统.docx》由会员分享,可在线阅读,更多相关《c语言编程机房收费管理系统.docx(12页珍藏版)》请在冰豆网上搜索。
c语言编程机房收费管理系统
课程设计报告
题目:
微机机房收费管理系统
学号:
1220070334
姓名:
王玮
专业:
计算机系统维护
班级:
12计维
指导教师:
袁雪梦
2014年7月17日
课程设计报告封面………………………………………1
目录………………………………………………………2
一.实验题目…………………………………………………3
二.实验目的…………………………………………………3
三.实验设计说明与要求………………………………………3-4
四.程序实现流程图为…………………………………………4
五.课程设计与心得体会………………………………………4-5
六.程序实现过程………………………………………………5-10
七.实验结果……………………………………………………10-12
机房收费系统课程设计报告
一.实验题目:
《机房收费管理系统》设计任务
(1)输入功能:
输入15名学生的学号、班级、姓名、上机起始时间,下机时间。
(2)计算功能:
计算每个学生的上机费用。
(上机费用=上机时间*1.0/h,注:
不足一小时按一小时计算)
(3)查询功能:
按条件查询显示学生上机信息。
如:
(查询班级、学号、姓名、上机时间)等。
二.实验目的:
通过对基本数据类型、语句、数组、函数、结构、指针以及文件等的操作,使学生全面掌握结构化程序设计的基本方法。
让我们进一步了解和熟悉C语言的理论基础,能熟练地运用C语言进行编程,相关运用程序的完善与维护,及相关的设计。
从而在今后的发展中有一定的学习基础便于实用。
三.实验设计说明与要求:
从课程设计的目的出发,通过课程设计的各个环节,达到以下教学要求:
1.编写一个菜单驱动的学生机房上机收费管理系统程序(要求使用VC++6.0),实现相关功能。
备注:
记录以下信息:
学号,姓名,班级,上机时间,上机费用。
2.进一步掌握C语言程序设计的基本思想和方法;
3.掌握结构化程序设计的基本原理及应用;
4.要求通过数字键或者字母键的选择来对信息进行相应的操作。
需求分析:
根据机房收费管理设计的要求,需要设计三个功能:
分别是输入学生上机信息功能,计算上机所花费的时间和费用功能和用学号,姓名,班级能查询到学生的信息功能等
1.在输入功能方面,需要把学号、班级、姓名、上机时间等输入进系统中。
2.在计算功能方面,需要计算出每个学生的上机所用的费用
3.在查询功能方面,要能够按照查询条件,查询出相应的班级、学号、姓名、上机时间等学生的信息。
在设计工程中,把每个功能使用自定义函数的方式书写,并最后用switch语句在主函数中调用,使用模块化设计的总体思路。
四.程序实现流程图为:
五.课程设计与心得体会:
根据机房收费管理系统的需求分析和设计要求,这次通过C语言程序设计,实现了本系统的基本功能,分别是信息的输入,查询和计算。
虽然实现了这三大基本功能,但是这次的程序设计也还是存在着一些不足之处,由于是新接触编程设计,自身对于学习的知识点也存在着一些模糊的概念。
所以,在对于程序的模块化设计方面,认识也有待加强,代码变量使用过多,占用内存大,有很大的优化方向。
在实现功能的过程中,并没有用到指针和链表等高级C语言编程方式,这也是这次编程需要改进的地方。
通过对机房收费管理系统的编写,更加掌握了C语言的基本语法,巩固了C语言知识。
同时在C的设计过程中,对C语言运用循环,自定义函数等方面的思想有了更加深刻的认识,体会到了编程的难度之大,对以后编写程序有了很好的初步认识。
通过这几周的课程设计,也认识到自己对于C语言知识的一些不足之处,在对书本的知识点还有些掌握的不够透彻,在一些编程的地方可以更加优化代码,以最少的代码实现最强大的功能。
在指针和链表方面,以后也还需要和老师同学探讨,让以后的C语言编程中能够合理的运用这些C语言里的精华内容。
六.程序实现过程:
#include
#include
#include
Structtime
{inthour;
intminute;
};
typedefstructStudent
{intxuehao;
charbanji[10];
charname[10];
inttime_hour;
inttime_minute;
structtimebegin,end;
structStudentStudent[30];
staticinti=0;
voidinsert();
voidend_money();
voidselect_xuehao();
voidselect_name();
voidselect_banji();
intmain()
{inti;
for(;;)
{printf("\t\t**********************************************\n");printf("\t\t\n");printf("\t\t*************贵州大学人民武装学院*************\n");printf("\t\t\n");printf("\t\t***************机房收费管理系统***************\n");printf("\t\t\n");
printf("\t\t**********************************************\n");printf("1.---------------输入学生信息:
\n");printf("2.---------------下机结账:
\n");printf("3.---------------按学号查询:
\n");printf("4.---------------按班级查询:
\n");printf("5.---------------按姓名查询:
\n");printf("6.---------------退出系统:
\n");printf("\n\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^编制人员:
王玮");printf("\n\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^编制时间:
二零一四年七月七日\n");printf("\n\n请选择功能:
");
scanf("%d",&i);
switch(i)
{
case1:
{system("cls");
insert();
}break;
case2:
{system("cls");
end_money();
}break;
case3:
{system("cls");
select_xuehao();
}break;
case4:
{system("cls");
select_banji();
}break;
case5:
{system("cls");
select_name();
}break;
case6:
{
return0;
}
}
}
system("pause");
return0;
}
voidinsert()
{printf("请输入学号:
");
scanf("%d",&Student[i].xuehao);printf("请输入姓名:
");
scanf("%s",&Student[i].name);printf("请输入班级:
");
scanf("%s",&Student[i].banji);printf("请输入上机时间:
");
scanf("%d:
%d",&Student[i].begin.hour,&Student[i].begin.minute);
i=i+1;
system("pause");
system("cls");
voidend_money()
{
intm,minute,hour;
intxuehao;
printf("请输入学号:
");
scanf("%d",&xuehao);
for(m=0;m
{if(xuehao==Student[m].xuehao)
{printf("请输入%d的下机时间:
",xuehao);
scanf("%d:
%d",&Student[m].end.hour,&Student[m].end.minute);
if(Student[m].end.minute{
minute=Student[m].end.minute+60-Student[m].begin.minute;
hour=Student[m].end.hour-1-Student[m].begin.hour;
Student[m].time_hour=hour;
Student[m].time_minute=minute;
}
else
{
minute=Student[m].end.minute-Student[m].begin.minute;
hour=Student[m].end.hour-Student[m].begin.hour;
Student[m].time_hour=hour;
Student[m].time_minute=minute;
}
if(minute>0)
{
hour=hour+1;
printf("上机时间为:
%d:
%d费用为:
%d",Student[m].time_hour,Student[m].time_minute,hour);
}else{
printf("上机时间为:
%d:
%d费用为:
%d",Student[m].time_hour,Student[m].time_minute,hour);
}}
}
system("pause");
system("cls");
}
voidselect_xuehao()
{
intxuehao;
intm;
printf("请输入学号:
");
scanf("%d",&xuehao);
for(m=0;m
{
if(xuehao==Student[m].xuehao)
{printf("学号:
%d\t",Student[m].xuehao);
printf("班级:
%s\t",Student[m].banji);printf(“姓名:
%s\t",&Student[m].name);printf("上机开始时间:
%d:
%d\t",Student[m].begin.hour,Student[m].begin.minute);printf(“上机结束时间:
%d:
%d\t",Student[m].end.hour,Student[m].end.minute);printf(“上机时间:
%d:
%d\n\t",Student[m].time_hour,Student[m].time_minute);
}
elseif(m==i)
{
printf("没有该生记录:
\n");
}
}
system("pause");
system("cls");
}
voidselect_banji()
{
charbanji[10];
intm;
printf("请输入班级:
");
scanf("%s",banji);
for(m=0;m
{if(!
strcmp(banji,Student[m].banji)){printf("学号是:
%d\t",Student[m].xuehao);printf("班级是:
%s\t",Student[m].banji);printf(“姓名是:
%s\t",&Student[m].name);printf("上机开始时间:
%d:
%d\t",Student[m].begin.hour,Student[m].begin.minute);printf("上机结束时间:
%d:
%d\t",Student[m].end.hour,Student[m].end.minute);printf("上机时间为:
%d:
%d\n",Student[m].time_hour,Student[m].time_minute);
}
elseif(m==i)
{
printf("没有该生记录:
\n");}}
system("pause");
system("cls");
}
voidselect_name()
{
charname[10];
intm;
printf("请输入姓名:
");
scanf("%s",name);
for(m=0;m
{if(!
strcmp(name,Student[m].name))
{printf("学号是:
%d\t",Student[m].xuehao);printf("班级是:
%s\t",Student[m].banji);printf("姓名是:
%s\t",&Student[m].name);printf("上机开始时间:
%d:
%d\t",Student[m].begin.hour,Student[m].begin.minute);printf("上机结束时间:
%d:
%d\t",Student[m].end.hour,Student[m].end.minute);printf("上机时间为:
%d:
%d\n",Student[m].time_hour,Student[m].time_minute);
}
elseif(m==i)
{
printf("没有该生记录:
\n");
}
}
system("pause");
system("cls");
}
七.实验结果:
(注:
文档可能无法思考全面,请浏览后下载,供参考。
可复制、编制,期待你的好评与关注!
)