📄 modify.cpp
字号:
//修改学员档案
#include"head.h"
void modify(struct student *p)
{
int i=0, choice=10, j=0;
char number[10]={' '};
struct student * head=p, *taill=NULL;
float m=0;
star:
do{
system("cls");//清屏
choice=10;
printf("\n\n\n\t\t\t 修改菜单\n\n\n");
printf("\t\t ∵∵∵∵∵∵∵∵∵∵∵∵∵∵∵∵∵∵\n\n\n");
printf("\t\t\t 1. 按学员学号修改成绩\n\n\n");
printf("\t\t\t 2. 按学员姓名修改成绩\n\n\n");
printf("\t\t\t 0. 返回主菜单\n\n\n");
printf("\t\t ∴∴∴∴∴∴∴∴∴∴∴∴∴∴∴∴∴∴\n\n\n");
printf("\t\t\t 请选择(0~2)\n");
fflush(stdin);
scanf("%d",&choice);
if(choice==1) //按学号修改
{
i=search_number(p);
while(head!=NULL)
{
taill=head;
if(strcmp(head->Stnumber,number)==0)
break;
head=head->next;
}
if(i!=0 )
{
printf("请输入修改后的该学生的姓名:\n");
gets(taill->name);
printf("请输入修改后的该学生的语文、数学、 英语的单科成绩:\n");
taill->average=0;
for(int j=0;j<3;j++)
{
scanf("%f",&m);
if(m>100 ||m<0)
{
printf("成绩只能在0到100之间,请核对后再输入!");
j=0;
break;
}
taill->grade[j]=m;
taill->average=taill->average+m ;
}
taill->average=taill->average/3;
printf("修改成功!\n");
getch();
}
}
if(choice==2) //按姓名修改
{
i= search_name( p);
head=p;
while(head!=NULL)
{
taill=head;
if(strcmp(head->Stnumber,number)==0)
break;
head=head->next;
}
if(i>1)
{
printf("有同名学生,请按学号修改!\n");
getch();
goto star;
}
if(i!=0)
{
NUBER:
printf("请输入修改后的该学生的学号:\n");
fflush(stdin);
for(i=0;i<11;i++)
{
j=j+1;
if(j>10)
{
printf("输入数据太长,请核对后重新输入!\n");
}
scanf("%c",&number[i]);
if(number[i]=='\n')
{
number[i]='\0';
break;
}
j = check_re(number,p); //检查是否输入重复
if(j==0)
{
strcpy(head->Stnumber,number);
}
else
{
printf("该学员号已存在,请核对后再输入!\n");
goto NUBER;
}
}
printf("请输入修改后的该学生的语文、数学、英语的单科成绩:\n");
head->average=0;
for(int j=0;j<3;j++)
{
scanf("%f",&m);
if(m>100 ||m<0)
{
printf("成绩只能在0到100之间,请核对后再输入!");
j=0;
break;
}
head->grade[j]=m;
head->average=head->average+m ;
}
head->average=head->average/3;
printf("修改成功!\n");
getch();
}
}
if(choice!=0 && choice!=1 &&choice!=2)
{
printf("输入错误,请重新输入!");
getch();
}
}while(choice!=0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -