c语言编程机房收费管理系统文档格式.docx
《c语言编程机房收费管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《c语言编程机房收费管理系统文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
六.程序实现过程………………………………………………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<
stdio.h>
string.h>
stdlib.h>
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"
\t\t*************贵州大学人民武装学院*************\n"
\t\t***************机房收费管理系统***************\n"
printf("
1.---------------输入学生信息:
\n"
2.---------------下机结账:
3.---------------按学号查询:
4.---------------按班级查询:
5.---------------按姓名查询:
6.---------------退出系统:
\n\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^编制人员:
王玮"
\n\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^编制时间:
二零一四年七月七日\n"
\n\n请选择功能:
"
scanf("
%d"
&
i);
switch(i)
{
case1:
{system("
cls"
insert();
}break;
case2:
end_money();
case3:
select_xuehao();
case4:
select_banji();
case5:
select_name();
case6:
{
return0;
}
}
system("
pause"
return0;
}
voidinsert()
{printf("
请输入学号:
scanf("
Student[i].xuehao);
请输入姓名:
%s"
Student[i].name);
请输入班级:
Student[i].banji);
请输入上机时间:
%d:
Student[i].begin.hour,&
Student[i].begin.minute);
i=i+1;
system("
voidend_money()
{
intm,minute,hour;
intxuehao;
请输入学号:
xuehao);
for(m=0;
m<
i;
m++)
{if(xuehao==Student[m].xuehao)
{printf("
请输入%d的下机时间:
xuehao);
Student[m].end.hour,&
Student[m].end.minute);
if(Student[m].end.minute<
Student[m].begin.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;
}
if(minute>
0)
hour=hour+1;
上机时间为:
%d费用为:
Student[m].time_hour,Student[m].time_minute,hour);
}else{
}}
voidselect_xuehao()
intm;
if(xuehao==Student[m].xuehao)
学号:
%d\t"
Student[m].xuehao);
班级:
%s\t"
Student[m].banji);
printf(“姓名:
Student[m].name);
上机开始时间:
Student[m].begin.hour,Student[m].begin.minute);
printf(“上机结束时间:
Student[m].end.hour,Student[m].end.minute);
printf(“上机时间:
%d\n\t"
Student[m].time_hour,Student[m].time_minute);
elseif(m==i)
printf("
没有该生记录:
}
voidselect_banji()
请输入班级:
banji);
{if(!
strcmp(banji,Student[m].banji)){printf("
学号是:
班级是:
printf(“姓名是:
上机开始时间:
上机结束时间:
%d\n"
}}
}
voidselect_name()
请输入姓名:
name);
strcmp(name,Student[m].name))
姓名是:
七.实验结果:
(注:
文档可能无法思考全面,请浏览后下载,供参考。
可复制、编制,期待你的好评与关注!
)