#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#include<string.h>
typedef struct student
{
char name[15];
float score;
struct student* next;
}SS;
int len = sizeof(SS);
int main(void)
{
SS *create(void);
SS *dele(SS *h);
void print(SS *h);
print(dele(create()));
return 0;
}
SS *dele(SS *h)
{
SS *p=h,*q;
char n[15];
scanf("%s",n);
while(p)
{
if(strcmp(p->name,n)==0)
{
if(p==h)
{
h=p->next;
free(p);
p=h;
continue;
}
else
{
q->next=p->next;
free(p);
p=q->next;
continue;
}
}
q=p;
p=p->next;
}
return h;
}
SS* create(void)
{
SS* head;
SS* p1, * p2;
p1 = p2 = (SS*)malloc(len);
scanf("%s %f", &p1->name, &p1->score);
head = p1;
while (p1->score != -1)
{
p2->next = p1;
p2 = p1;
p1 = (SS*)malloc(len);
scanf("%s %f", &p1->name, &p1->score);
}
p2->next = NULL;
return head;
}
void print(SS *h)
{
while(h)
{
printf("%s %.1f\n",h->name,h->score);
h=h->next;
}
}