class Room { public: vector<Student> students; // 学生信息列表 // 添加学生信息 void add_student(Student s) { students.push_back(s); } // 按条件查询学生信息 void query_students(string id="", string class_name="", string name="") { for (int i = 0; i < students.size(); i++) { Student s = students[i]; if ((id == "" || s.id == id) && (class_name == "" || s.class_name == class_name) && (name == "" || s.name == name)) { s.display_info(); } } } // 显示机器使用情况 void display_usage() { int hours[24] = {0}; // 每小时使用次数 for (int i = 0; i < students.size(); i++) { Student s = students[i]; int start_hour = s.start_time / 100; int end_hour = (s.start_time + s.compute_fee()) / 100; for (int j = start_hour; j < end_hour; j++) { hours[j]++; } } cout << "机器使用情况:" << endl; for (int i = 0; i < 24; i++) { cout << i << "点:" << hours[i] << "次" << endl; } } };分析这段代码
时间: 2023-11-22 15:52:04 浏览: 72
这段代码定义了一个名为 Room 的类,包含了以下成员函数:
1. `add_student(Student s)`:用于向学生信息列表中添加一个学生信息。
2. `query_students(string id="", string class_name="", string name="")`:按条件查询学生信息并打印输出。可以根据学生的 id、班级名称、姓名进行查询,如果某个条件为空则表示不限制该条件。
3. `display_usage()`:显示机器使用情况,即统计每个小时机器的使用次数,最终输出每个小时的使用次数。
其中,类成员变量 `students` 是一个 vector 容器,存储了所有学生的信息。
该类的设计思路是,通过添加学生信息和查询学生信息两个函数,来实现对学生信息的管理。同时,通过显示机器使用情况函数,可以统计每个小时机器的使用次数,有助于对机器的使用情况进行监控和调整。
相关问题
使用C#创建一个学生类Student,具有姓名、学号、年龄、班级等属性。使用泛型集合List<T>存储几个学生对象,实现学生对象信息的增删查。
在C#中,你可以创建一个名为`Student`的类,包含常见的属性如姓名(Name)、学号(StudentID)、年龄(Age)和班级(Class)。然后利用泛型集合`List<T>`来存储这些学生对象,使得你可以处理任意类型的`Student`实例。下面是一个简单的示例:
```csharp
public class Student
{
public string Name { get; set; }
public int StudentID { get; set; }
public int Age { get; set; }
public string Class { get; set; }
// 可选的构造函数和其他辅助方法
public Student(string name, int studentID, int age, string class)
{
Name = name;
StudentID = studentID;
Age = age;
Class = class;
}
}
// 创建一个泛型列表来存储Student对象
List<Student> students = new List<Student>();
// 动态添加学生到列表中
public void AddStudent(Student student)
{
students.Add(student);
}
// 从列表中删除学生
public void RemoveStudent(int studentID)
{
students.Remove(students.Find(s => s.StudentID == studentID));
}
// 查询学生
public Student FindStudent(int studentID)
{
return students.FirstOrDefault(s => s.StudentID == studentID);
}
// 显示所有学生信息
public void DisplayStudents()
{
foreach (var student in students)
{
Console.WriteLine($"Name: {student.Name}, ID: {student.StudentID}, Age: {student.Age}, Class: {student.Class}");
}
}
阅读全文