Description
有一学生成绩表,包括学号、姓名、3门课程成绩。请实现如下删除功能:输入一个学生的学号,删除该学生的所有信息。
Input
首先输入一个整数n(1<=n<=100),表示学生人数;
然后输入n行,每行包含一个学生的信息:学号(12位)、姓名(不含空格且不超过20位),以及3个整数,表示3门课成绩,数据之间用空格隔开。
最后一行输入一个学号num。
Output
若要删除的学号不存在,则输出“error!”;否则,输出删除该学生后的所有记录。
Sample Input
3541207010188 Zhangling 78 95 55541207010189 Wangli 87 99 88541207010190 Fangfang 68 76 75541207010188
Sample Output
541207010189 Wangli 87 99 88541207010190 Fangfang 68 76 75
HINT
Source
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
typedef struct student
{
char ID[20];
char name[50];
int a,b,c;
} STU;
int main()
{
char num[20];
STU stu[102];
int n,i,j=0,flag=0;
scanf("%d",&n);
for(i=0; i<n; i++)
{
scanf("%s",stu[i].ID);
scanf("%s",stu[i].name);
scanf("%d",&stu[i].a);
scanf("%d",&stu[i].b);
scanf("%d",&stu[i].c);
}
getchar();
scanf("%s",num);
for(i=0; i<n; i++)
{
if(strcmp(num,stu[i].ID)==0)
{
j=i;
flag=1;
}
}
if(flag==1)
{
for(i=0; i<n; i++)
{
if(i==j)
continue;
else
{
printf("%s ",stu[i].ID);
printf("%s ",stu[i].name);
printf("%d ",stu[i].a);
printf("%d ",stu[i].b);
printf("%d\n",stu[i].c);
}
}
}
else
printf("error!");
return 0;
}