以下是一个简单的C++对象数组实现学生管理系统并保存到文件:

#include <iostream>
#include <fstream>
#include <string>

using namespace std;

class Student {
public:
    string name;
    int age;
    float score;

    void input() {
        cout << "请输入学生姓名:";
        cin >> name;
        cout << "请输入学生年龄:";
        cin >> age;
        cout << "请输入学生成绩:";
        cin >> score;
    }

    void output() {
        cout << "学生姓名:" << name << endl;
        cout << "学生年龄:" << age << endl;
        cout << "学生成绩:" << score << endl;
    }
};

const int MAX_STUDENT = 100;

int main() {
    Student students[MAX_STUDENT];
    int num = 0;
    char choice = ' ';

    // 读取文件
    ifstream infile("students.txt");
    if (infile.is_open()) {
        while (!infile.eof()) {
            Student s;
            infile >> s.name >> s.age >> s.score;
            if (s.name != "") {
                students[num] = s;
                num++;
            }
        }
    }
    infile.close();

    // 显示菜单
    while (true) {
        cout << "========学生管理系统========" << endl;
        cout << "1. 添加学生" << endl;
        cout << "2. 显示学生" << endl;
        cout << "3. 保存到文件" << endl;
        cout << "4. 退出程序" << endl;
        cout << "请输入操作编号:";
        cin >> choice;

        // 执行操作
        switch (choice) {
        case '1': // 添加学生
            if (num < MAX_STUDENT) {
                Student s;
                s.input();
                students[num] = s;
                num++;
            } else {
                cout << "学生数量已达上限!" << endl;
            }
            break;

        case '2': // 显示学生
            for (int i = 0; i < num; i++) {
                students[i].output();
            }
            break;

        case '3': // 保存到文件
            ofstream outfile("students.txt");
            if (outfile.is_open()) {
                for (int i = 0; i < num; i++) {
                    outfile << students[i].name << " " << students[i].age << " " << students[i].score << endl;
                }
            }
            outfile.close();
            cout << "已保存到文件!" << endl;
            break;

        case '4': // 退出程序
            return 0;

        default:
            cout << "输入有误,请重新输入!" << endl;
            break;
        }
    }

    return 0;
}

该程序使用了一个Student类来表示学生,包含学生的姓名、年龄和成绩。使用一个对象数组students来存储多个学生,最多支持100个学生。

在程序运行时,先从文件students.txt中读取学生信息,如果文件不存在或无法打开,则使用空的学生列表。然后显示菜单,根据用户选择执行不同的操作,包括添加学生、显示学生、保存到文件和退出程序。在执行保存到文件操作时,将对象数组中的学生信息写入到文件中。

这样就实现了一个简单的学生管理系统,并可以将学生信息保存到文件中

c++对象数组写学生管理系统有保存文件

原文地址: https://www.cveoy.top/t/topic/giUm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录