👉博__主👈:米码收割机
👉技__能👈:C++/Python语言
👉公众号👈:测试开发自动化【获取源码+商业合作】
👉荣__誉👈:阿里云博客专家博主、51CTO技术博主
👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。
【C++】C+±机房收费管理系统(源码+注释)【独一无二】
目录
- 【C++】C++-机房收费管理系统(源码+注释)【独一无二】
- 一、设计要求
- 二、设计思路
- 结构体
- 输入学生信息
- 计算上机费用
- 查询学生信息
- 显示机器使用情况
- 将信息写入文件
- 从文件读取信息
- 主函数
- 三、可视化分析
一、设计要求
(21)机房收费管理系统
功能要求:
1)输入功能:输入30名学生的学号、班级、姓名、上机起始时间。
2)计算功能:计算每个下机学生的上机费用,每小时1元。(上机费用=上机时间*1.0/h ,不足一小时按一小时计算)
3)查询功能:按条件(班级、学号、姓名)显示学生的上机时间。
4)机器使用情况的显示(显示方式不限但要一目了然)
5)能将所有信息读写文件
👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈
二、设计思路
结构体
struct Student {
string student_id;
string class_name;
string name;
time_t start_time;
double fee;
};
vector<Student> students;
- 结构体
Student
: 用于存储学生信息,包括学号、班级、姓名、上机起始时间和上机费用。 - 全局变量
students
: 存储所有学生信息的容器。
👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈
输入学生信息
void inputStudentInfo() {
for (int i = 0; i < 30; ++i) {
Student student;
cout << "请输入第 " << i + 1 << " 个学生的信息:" << endl;
cout << "学号: ";
cin >> student.student_id;
cout << "班级: ";
cin >> student.class_name;
cout << "姓名: ";
cin >> student.name;
// 此处略去 至少10行 代码。。。
student.fee = 0.0;
students.push_back(student);
}
}
- 函数
inputStudentInfo
: 输入30个学生的信息并存储在students
容器中。
👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈
计算上机费用
void calculateFee() {
for (auto& student : students) {
tm tm_end = {};
cout << "请输入学生 " << student.name << " 的下机时间 (格式: YYYY MM DD HH MM SS): ";
// 此处略去 至少10行 代码。。。
double hours = difftime(end_time, student.start_time) / 3600.0;
student.fee = ceil(hours) * 1.0; // 每小时 1 元,不足一小时按一小时计算
}
}
- 函数
calculateFee
: 计算每个学生的上机费用,根据输入的下机时间计算上机时长并按每小时1元收费。
查询学生信息
void queryStudentInfo() {
string condition;
cout << "请输入查询条件(班级/学号/姓名): ";
cin >> condition;
for (const auto& student : students) {
// 此处略去 至少10行 代码。。。
}
}
}
- 函数
queryStudentInfo
: 根据输入的查询条件(班级、学号或姓名)查询并显示学生信息。
👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈
显示机器使用情况
void displayUsage
() {
cout << left << setw(12) << "学号" << setw(10) << "班级" << setw(10) << "姓名" << setw(20) << "上机起始时间" << "上机费用" << endl;
for (const auto& student : students) {
// 此处略去 至少10行 代码。。。
}
}
- 函数
displayUsage
: 显示所有学生的上机使用情况,包括学号、班级、姓名、上机起始时间和上机费用。
将信息写入文件
void writeToFile() {
ofstream file("student_info.txt");
// 此处略去 至少10行 代码。。。
file.close();
}
- 函数
writeToFile
: 将所有学生信息写入文件student_info.txt
中。
从文件读取信息
👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈
void readFromFile() {
ifstream file("student_info.txt");
if (!file.is_open()) return;
Student student;
// 此处略去 至少10行 代码。。。
file.close();
}
- 函数
readFromFile
: 从文件student_info.txt
中读取学生信息并存储到students
容器中。
主函数
int main() {
int choice;
readFromFile();
while (true) {
cout << "\n机房收费管理系统\n";
cout << "1. 输入学生信息\n";
cout << "2. 计算上机费用\n";
cout << "3. 查询学生信息\n";
cout << "4. 显示机器使用情况\n";
cout << "5. 保存并退出\n";
cout << "请选择操作(1-5): ";
cin >> choice;
// 此处略去 至少10行 代码。。。
}
}
>👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈
return 0;
}
- 主函数
main
: 提供用户界面,用户可以选择输入学生信息、计算上机费用、查询学生信息、显示机器使用情况以及保存并退出。根据用户选择执行相应的操作。
三、可视化分析
👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈
剩余截图不再继续展示
👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 机房 ” 获取。👈👈👈