|
2 years ago | |
---|---|---|
README.md | 2 years ago |
README.md
Student_registration_management_system
//步骤3// #include <stdio.h>
struct Student { int id; float mathGrade; float physicsGrade; float englishGrade; float totalGrade; float averageGrade; };
void displayMenu() { printf(" 1.Input\n"); printf(" 2.Output\n"); printf(" 3.Order\n"); printf(" 4.Quit\n"); }
void makeThingsOrdered() { printf("You are trying to Make things ordered\n"); }
void quitProgram() { printf("You are about to Quit\n"); }
void displayWrongInput() { printf("Wrong input\n"); }
void inputStudentInfo(struct Student students[3]) {
for (int i = 0; i < 3; ++i) {
printf("Student %d:\n", i + 1);
// Input student details
scanf("%d", &students[i].id);
scanf("%f", &students[i].mathGrade);
scanf("%f", &students[i].physicsGrade);
scanf("%f", &students[i].englishGrade);
// Calculate total and average grades
students[i].totalGrade = students[i].mathGrade + students[i].physicsGrade + students[i].englishGrade;
students[i].averageGrade = students[i].totalGrade / 3;
}
}
void displayStudentInfo(struct Student students[3]) { // Sort students based on total grade for (int i = 0; i < 2; ++i) { for (int j = 0; j < 2 - i; ++j) { if (students[j].totalGrade > students[j + 1].totalGrade) { struct Student temp = students[j]; students[j] = students[j + 1]; students[j + 1] = temp; } } }
// Display sorted student info
for (int i = 0; i < 3; ++i) {
printf("学号 %d,总成绩 %.1f,平均成绩 %.1f\n", students[i].id, students[i].totalGrade, students[i].averageGrade);
}
}
int main() { char choice; struct Student students[3];
do {
displayMenu();
printf("Enter your choice: ");
scanf(" %c", &choice);
switch (choice) {
case 'i':
inputStudentInfo(students);
break;
case 'o':
displayStudentInfo(students);
break;
case 'm':
makeThingsOrdered();
break;
case 'q':
quitProgram();
break;
default:
displayWrongInput();
}
} while (choice != '4');
return 0;
}