Сформировать файл ”STUDENT”. вывести список студентов-хозрасчетников, имеющих задолжность
Сформировать файл ”STUDENT”, содержащий сведения об успеваемости студентов некоторой группы: фамилия, форма обучения (госбюджетная и хозрасчетная), итоги экзаменационной сессии по четырем предметам. Используя созданный файл, вывести список студентов-хозрасчетников, имеющих задолжность хоть по одной дисциплине.
#include <iostream>
#include <vector>;
#include <string>
#include <fstream>
using namespace std;
struct Student {
string surname;
string fstudy;
int mark1;
int mark2;
int mark3;
int mark4;
};
void DataInput(vector<Student>& data, size_t n) {
Student temp;
for (size_t i = 0; i < n; i++) {
cout << "Surname: ";
cin >> temp.surname;
cout << "Form of study (state budget/self-supporting): ";
getline(cin, temp.fstudy);
cin.ignore(32767, '\n');
cout << "Mark1: ";
cin >> temp.mark1;
cout << "Mark2: ";
cin >> temp.mark2;
cout << "Mark3: ";
cin >> temp.mark3;
cout << "Mark4: ";
cin >> temp.mark4;
cin.ignore(32767, '\n');
cout << endl;
data.push_back(temp);
}
}
void DataIf(vector<Student>& data, string& ss) {
ofstream fout("STUDENT.txt");
for (auto& it : data) {
if (it.fstudy == ss) {
fout << "Surname: " << it.surname<< endl;
fout << "Form of study (state budget/self-supporting): " << it.fstudy << endl;
fout << "Mark 1: " << it.mark1 << endl;
fout << "Mark 2: " << it.mark2 << endl;
fout << "Mark 3: " << it.mark3 << endl;
fout << "Mark 4: " << it.mark4 << endl;
fout << endl;
}
}
}
int main() {
size_t n;
cout << "Vvedite kolichestvo studentov: ";
cin >> n;
cin.ignore(32767, '\n');
vector<Student> data;
DataInput(data, n);
string ss;
ss = "self-supporting";
DataIf(data, ss);
}
Вот мой код. Помогите доработать его...