)编程实现:将从键盘输入的一组学生的学号,姓名及3科成绩信息(整数),将这些信息存储到磁盘文件f1.dat中,当输入学号为0时,输入结束。
时间: 2024-02-25 10:57:43 浏览: 82
接收从键盘输入某班学生的学号、姓名、成绩,对学 生的成绩进行排序.zip
5星 · 资源好评率100%
下面是一个C++程序实现将学生信息存储到磁盘文件中的例子:
```c++
#include <iostream>
#include <fstream>
using namespace std;
struct student {
int id;
string name;
int score1;
int score2;
int score3;
};
int main() {
ofstream fout("f1.dat", ios::binary); // 打开二进制文件进行写操作
if (!fout) {
cout << "无法打开文件!" << endl;
return 1;
}
student stu;
while (true) {
cout << "请输入学号(输入0结束):";
cin >> stu.id;
if (stu.id == 0) {
break;
}
cout << "请输入姓名:";
cin >> stu.name;
cout << "请输入3科成绩:";
cin >> stu.score1 >> stu.score2 >> stu.score3;
fout.write((char*)&stu, sizeof(student)); // 将结构体写入文件
}
fout.close();
return 0;
}
```
在这个例子中,我们使用了一个结构体 `student` 来存储学生信息。程序通过循环从键盘读入学生信息,并将其写入到磁盘文件 `f1.dat` 中。当输入学号为0时,输入结束。注意,我们使用了二进制文件进行读写操作,并且将结构体强制转换为 `char*` 后写入文件,这样能够确保数据的完整性。
阅读全文