#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct student{ int num; int score; struct student *next; }student; void main(){ void sort(student *LA,student *LB); int n,m; scanf("%d %d",&n,&m); student *LA,*LB,*s,*p; LA=(student *)malloc(sizeof(student)); LB=(student *)malloc(sizeof(student)); LA->next=LB->next=NULL; p=LA; while(n--){ s=(student *)malloc(sizeof(student)); scanf("%d %d",&s->num,&s->score); s->next=NULL; p->next=s; p=s; } p=LB; while(m--){ s=(student *)malloc(sizeof(student)); scanf("%d %d",&s->num,&s->score); s->next=NULL; p->next=s; p=s; } sort(LA,LB); for(p=LA->next;p->next!=NULL;p=p->next){ printf("%d %d\n",p->num,p->score); } printf("%d %d\n",p->num,p->score); } void sort(student *LA,student *LB){ student *pre,*p,*minpre,*min,*s,*pres,*temp; int a,b; char c[20]={'\0'}; for(p=LA->next;p->next!=NULL;p=p->next); p->next=LB->next; free(LB); for(pre=LA;pre->next!=NULL;pre=pre->next){ p=pre->next; s=p; pres=pre; min=p; minpre=pre; for(;s!=NULL;pres=s,s=s->next){ if(s->num<min->num){ min=s; minpre=pres; } } a=p->num; p->num=min->num; min->num=a; b=p->score; p->score=min->score; min->score=b; } } |
Double click to view unformatted code.