#include <iostream>
#include <string>
using namespace std;
typedef struct node{
string name;
int score;
struct node *next;
}SNode;
int flag;
void listsort(SNode *head){
head = head->next;
if (flag == 0){//shengxu
while (head->next != NULL){
if (head->name > head->next->name){
SNode temp;
temp.name = head->name;
temp.score = head->score;
head->name = head->next->name;
head->score = head->next->score;
head->next->name = temp.name;
head->next->score = temp.score;
}
head = head->next;
}
}
else{
while (head->next != NULL){
if (head->name < head->next->name){
SNode temp;
temp.name = head->name;
temp.score = head->score;
head->name = head->next->name;
head->score = head->next->score;
head->next->name = temp.name;
head->next->score = temp.score;
}
head = head->next;
}
}
}
int main(){
int n = 0;
cin >> n;
cin >> flag;
SNode *pHead, *pCurrent, *pTail;
pHead = new SNode;
pHead->next = NULL;
pCurrent = pTail = pHead;
for (int i = 0; i < n; i++){
pCurrent = new SNode;
pTail->next = pCurrent;
pTail = pCurrent;
cin >> pCurrent->name;
cin >> pCurrent->score;
pCurrent->next = NULL;
}
listsort(pHead);
SNode *bianli = pHead->next;
for (int i = 0; i < n; i++){
cout << bianli->name << " " <<bianli->score << endl;
bianli = bianli->next;
}
system("pause");
return 0;
}
成绩排序
最新推荐文章于 2022-12-05 15:38:45 发布