【发布时间】:2016-09-26 04:31:25
【问题描述】:
所以我必须允许用户使用 5 种不同类型的信息创建一定数量的结构,然后根据其中一种类型进行排序。例如,他们会输入所有数据,然后按年级或姓名排序。我将如何在不同的结构中创建一个仅包含不同名称或等级的数组?
#include <iostream>
#include <string>
struct student
{
std::string studentName;
std::string studentIDNumber;
int currentExamGrade;
int priorExamGrade;
double GPA;
};
void createStudent()
{
int numStudents;
std::cout << "Enter number of students\n";
std::cin >> numStudents;
while (numStudents > 0)
{
student name;
std::cout << "Enter the student's name\n";
std::cin >> name.studentName;
std::cout << "Enter the student's ID number\n";
std::cin >> name.studentIDNumber;
std::cout << "Enter the student's current exam grade\n";
std::cin >> name.currentExamGrade;
std::cout << "Enter the student's prior exam grade\n";
std::cin >> name.priorExamGrade;
std::cout << "Enter the student's GPA\n";
std::cin >> name.GPA;
numStudents -= 1;
}
}
int main()
{
createStudent();
int choice;
std::cout << "How do you want to sort the list?\n (Enter 1 for name, 2 for ID number, 3 for current exam grade, 4 for prior exam grade, 5 for GPA\n";
std::cin >> choice;
return 0;
}
【问题讨论】:
-
那么,Captn,你要排序的数组在哪里?你读学生没问题,但读完一个后,你丢弃数据并读另一个。
-
这是我的问题的一部分
-
好的。是时候阅读有关 std::vector 的信息了 - 也可以查看示例。
-
一步一步。首先让输入工作,然后担心排序。垃圾进垃圾出。垃圾进,你把垃圾分类。为什么要调试垃圾分类?