std::vector<student_t> st;
for(unsigned i = 0; i < 10; ++i) st.push_back(student_t());
std::sort(st.begin(), st.end(), &compare);
Вы также можете использовать этот конструктор vector
вместо строк 1-2:
std::vector<student_t> st (10 /*, student_t() */);
Edit:
Если вы хотите ввести 10 учеников с помощью клавиатуры, вы можете написать функцию, которая конструирует ученика:
struct student_t &enter_student()
{
student_t s;
std::cout << "Enter name" << std::endl;
std::cin >> s.name;
std::cout << "Enter age" << std::endl;
std::cin >> s.age;
std::cout << "Enter score" << std::endl;
std::cin >> s.score;
return s;
}
std::vector<student_t> st;
for(unsigned i = 0; i < 10; ++i) st.push_back(enter_student());