社区讨论
求助,样例过了,但全WA
P5266【深基17.例6】学籍管理参与者 4已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @lo853u5l
- 此快照首次捕获于
- 2023/10/27 12:55 2 年前
- 此快照最后确认于
- 2023/10/27 12:55 2 年前
C
#include<stdio.h>
#include<string.h>
typedef struct{
char name[25];
int score;
}Student;
void swap(Student*a,Student*b){
char temp[25];
strcpy(temp,a->name);
strcpy(a->name,b->name);
strcpy(b->name,temp);
int score=a->score;
a->score=b->score;
b->score=score;
}
Student stu[100010];
int size=0;
int find_tip(const char str[]){
for(int i=0;i<size;i++){
if(strcmp(str,stu[i].name)==0){
return i;
}
}
return size;
}
int main(){
int n;
scanf("%d",&n);
int x;
for(int i=0;i<n;i++){
scanf("%d",&x);
if(x==1){
char _name[25];
scanf("%s",_name);
int _score;
scanf("%d",&_score);
int tip=find_tip(_name);
if(tip>=size){
//stu[size].name=_name;
strcpy(stu[size].name,_name);
stu[size].score=_score;
size++;
}
else{
stu[tip].score=_score;
}
printf("OK\n");
}
else if(x==2){
char _name[25];
scanf("%s",_name);
int tip=find_tip(_name);
if(tip>=size){
printf("Not found\n");
}
else{
printf("%d\n",stu[tip].score);
}
}
else if(x==3){
char _name[25];
scanf("%s",_name);
int tip=find_tip(_name);
if(tip>=size){
printf("Not found\n");
}
else{
swap(&stu[size],&stu[tip]);
size--;
printf("Deleted successfully\n");
}
}
else{
printf("%d\n",size);
}
}
return 0;
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...