用C++设计一个程序建立存储学生信息的二进制文件data,文件中的每条记录包括学生学号、姓名和专业。要求从键盘上输入学生的信息,当输入学号为0时结束。
时间: 2024-10-11 10:09:03 浏览: 93
在C++中,我们可以使用`fstream`库来操作二进制文件。首先,需要包含必要的头文件,并创建一个结构体(struct)来表示学生的信息。然后,我们编写一个主函数,通过循环读取用户输入,将学生信息写入文件直到遇到指定的结束标志。以下是一个简单的示例:
```cpp
#include <iostream>
#include <fstream>
#include <string>
// 定义学生信息结构体
struct Student {
int id;
std::string name;
std::string major;
};
int main() {
// 打开二进制文件,如果不存在则创建
std::ofstream file("data", std::ios::binary);
if (!file.is_open()) {
std::cerr << "无法打开文件" << std::endl;
return 1;
}
// 循环读取并写入学生信息
Student student;
while (true) {
std::cout << "请输入学生的学号(0结束): ";
std::cin >> student.id;
if (student.id == 0)
break;
std::cout << "请输入姓名: ";
std::cin.ignore(); // 忽略换行符
std::getline(std::cin, student.name);
std::cout << "请输入专业: ";
std::getline(std::cin, student.major);
// 写入文件
file.write(reinterpret_cast<char*>(&student), sizeof(Student));
}
// 关闭文件
file.close();
std::cout << "学生信息已保存到文件data中." << std::endl;
return 0;
}
阅读全文
相关推荐



















