void ShowStudent(Students *asg, Student *as){ for(int p = 1;p <= asg->number;p++){ for(int i = p;i <= asg->number;i++){ if(asg->StudentsArray[p].getgrate > asg->StudentsArray[i].getgrate){ *as = asg->StudentsArray[p]; asg->StudentsArray[p] = asg->StudentsArray[i]; asg->StudentsArray[i] = *as; }else if(asg->StudentsArray[p].getgrate == asg->StudentsArray[i].getgrate&&asg->StudentsArray[p].Name > asg->StudentsArray[i].Name){ *as = asg->StudentsArray[p]; asg->StudentsArray[p] = asg->StudentsArray[i]; asg->StudentsArray[i] = *as; }}} for(int i=1;i<=asg->number;i++) cout<<asg->StudentsArray[i].Name<<"||"<<asg->StudentsArray[i].getgrate<<endl; system("pause"); system("cls"); }
时间: 2024-03-29 09:35:47 浏览: 60
这也是一段 C++ 代码,函数名为 ShowStudent,参数类型为 Students 和 Student 指针。
代码主要功能是按照学生的学分和姓名排序,并输出排序后的学生信息。具体实现如下:
1. 外层循环遍历所有学生,内层循环将当前学生和后面的学生进行比较,如果当前学生的学分比后面的学生低,则将两个学生的信息进行交换;
2. 如果学分相同,则按照学生姓名的字母顺序进行排序;
3. 循环输出排序后的学生信息;
4. 最后暂停程序并清除屏幕。
代码中同样使用了很多结构体和指针,具体实现需要查看完整代码。
相关问题
void TheStudent(Books *abs, Students *asg){ cout<<"What's your name?"<<endl; asg->number++; string n; cin>>n; asg->StudentsArray[asg->number].Name = n; int l; cout<<"添加多少课程?"<<endl; cin>>l; if(l > 4){ cout<<"增加的科目过多"<<endl; asg->number--; }else if(l<2){ cout<<"增加的科目太少"<<endl; asg->number--; } else{ while(l){ show1(abs); cout<<"输入课程序号"<<endl; int k; cin>>k; int t=0; if(k==0){break;} for(int i=1;i<=asg->StudentsArray[asg->number].number;i++){ if(asg->StudentsArray[asg->number].StudentArray[i].name == abs->ClassArray[k].name){t=1;} } if(t==1){cout<<"已拥有此课程"<<endl;} else if(k != 0 && asg->StudentsArray[asg->number].getgrate + abs->ClassArray[k].grade > 10){ cout<<"学分已满"<<endl; } else{ asg->StudentsArray[asg->number].number++; asg->StudentsArray[asg->number].StudentArray[asg->StudentsArray[asg->number].number].name = abs->ClassArray[k].name; asg->StudentsArray[asg->number].getgrate += abs->ClassArray[k].grade; l--; } } system("pause"); system("cls");} }
这是一段 C++ 代码,函数名为 TheStudent,参数类型为 Books 和 Students 指针。下面是代码的主要功能:
1. 提示用户输入姓名并保存;
2. 让用户输入要添加的课程数量,如果数量不符合要求则提示用户重新输入;
3. 循环让用户选择要添加的课程,如果已经拥有该课程则提示用户,如果学分已满则不能再添加,否则将课程信息保存到学生数组中;
4. 最后暂停程序并清除屏幕。
代码中使用了很多结构体和指针,具体实现需要查看完整代码。
阅读全文