int shanchu(int n) //定义
{int i;
int num;
int ss;
{printf("请输入待查找的学生学号:\n");//输入
scanf("%d",&num); //输出
ss=-1;
for(i=0;i<n;i++)
{if(num==student[i].num)
ss=i;
break;
}
if(ss==-1)
{printf("没有该学生信息\n");
getchar();
return 0;
}
else
{for(i=ss;i<n-1;i++) //语句
student[i].num=student[i+1].num;
strcpy(student[i].name,student[i+1].name);
student[i].score=student[i+1].score;
}
getchar();
return 1;
}
}
//-----------------------------------------------------------------------------------------------------------------
int main()
{
int s,s1,s2,rs,ms,*p,n; // rs=学生数量,ms=科目数量
int i = 0;
char password[10] = {0};
printf("请输入密码> ");
while (i<3 )
{
scanf("%s", password);
printf("\n");
if (strcmp(password, "123456") == 0)
{
printf("登陆成功\n");
system("学生成绩管理系统");
do{ //菜单
printf("----------【学生成绩管理系统】----------\n");
printf("\n1.读取文件数据\n");
printf("2.输入信息\n");
printf("3.计算每门课程的总分和平均分\n");
printf("4.按学生总分由高到低排出名次表\n");
printf("6.查询单科成绩排名\n");
printf("7.按姓名查询成绩\n");
printf("8.输出成绩表\n");
printf("9.删除信息\n");
printf("10.修改信息\n");
printf("0.退出系统\n");
printf("请选择并输入0~9:");
scanf("%d",&s);
if(s==1) //判断输入的菜单项并执行相应操作
{
p=read(); //p指向存有学生人数和课程门数的数组
rs=*p; //*p为学生人数
ms=*(p+1); //*(p+1)为课程门数
}
else if(s==2)
{
printf("请输入学生人数和课程门数:");
scanf("%d%d",&s1,&s2); //为避免输入错误而使变量ms,rs中可能存有的数据丢失 ,因此将输入的数据暂时存放在另外两个变量中
if(s1<0||s1>30||s2<0||s2>6)
printf("输入错误,请重新输入!\n");
else
{
rs=s1;
ms=s2;
luru(rs,ms);
}
}
else if(s==3) jisuan(rs,ms);
else if(s==4) mingci(rs,ms);
else if(s==6) danke(ms,rs);
else if(s==7) findname(ms,rs);
else if(s==8) output(rs,ms);
else if(s==9) shanchu(n);
else if(s==10) change(n);
else if(s==0) ;
else printf("输入错误,请重新输入!\n");
}while(s!=0);
return 0;
}
else
{
i++;
if (i != 3)
printf("密码输入错误,请重新输入> ");
}
}
if (i == 3)
{
printf("密码错误三次,程序退出\n");
}
system("pause");
return 0;
}
改为strcpy(student[i].score,student[i+1].score);
错误原因参考:https://blog.csdn.net/ZmJ6666/article/details/103014873
编译器提示了错误原因