学生成绩管理代码.docx
《学生成绩管理代码.docx》由会员分享,可在线阅读,更多相关《学生成绩管理代码.docx(7页珍藏版)》请在冰点文库上搜索。
学生成绩管理代码
#include"stdio.h"
#include"string"
/*定义学生结构体*/
structStudent
{
charID[20];
charName[20];
floatMark1;
floatMark2;
floatMark3;
floatAverage;
};
/*声明学生数组及学生数量*/
structStudentstudents[1000];
intnum=0;
/*求平均值*/floatAvg(structStudentstu)
return(stu.Mark1+stu.Mark2+stu.Mark3)/3;
}
/*通过学号返回数组下标*/
intStudent_SearchBylndex(charid[])
inti;
for(i=0;i{if(strcmp(students[i].ID,id)==O){returni;}}return-1;/*通过姓名返回数组下标*/intStudent_SearchByName(charname[]){inti;for(i=0;i{if(strcmp(students[i].Name,name)==0){returni;}}return-1;}/*显示单条学生记录*/voidStudent_DisplaySingle(intindex){printf("%10s%10s%8s%8s%8s%10s\n","学号","姓名","成绩","成绩","成绩","平均成绩");printf("\n");printf("%10s%10s%8.2f%8.2f%8.2f%10.2f\n",students[index].ID,students[index].Name,students[index].Mark1,students[index].Mark2,students[index].Mark3,students[index].Average);}/*插入学生信息*/voidStudent_lnsert(){while(1) printf("请输入学号:"); seanf("%s",&students[num].ID);getchar();printf("请输入姓名:");seanf("%s",&students[num].Name);getchar();printf("请输入成绩:");seanf("%f",&students[num].Mark1);getchar();printf("请输入成绩:");seanf("%f",&students[num].Mark2);getchar();printf("请输入成绩:");scanf("%f",&students[num].Mark3);getchar();students[num].Average=Avg(students[num]);num++;printf("是否继续?(y/n)");if(getchar()=='n'){break;}}}/*修改学生信息*/voidStudent_Modify()//floatmark1,mark2,mark3;while(1){charid[20];intindex;printf("请输入要修改的学生的学号:");seanf("%s",&id);getchar();index=Student_SearchBylndex(id);if(index==-1){printf("学生不存在!\n");}else{printf("你要修改的学生信息为:\n");Student_DisplaySingle(index); printf("--请输入新值--\n"); printf("请输入学号:"); seanf("%s",&students[index].ID);getchar();printf("请输入姓名:");scanf("%s",&students[index].Name);getchar();printf("请输入成绩:");scanf("%f",&students[index].Mark1);getchar();printf("请输入成绩:");scanf("%f",&students[index].Mark2);getchar();printf("请输入成绩:");scanf("%f",&students[index].Mark3);getchar();students[index].Average=Avg(students[index]);}printf("是否继续?(y/n)");if(getchar()=='n'){break;}}}/*删除学生信息*/voidStudent_Delete(){inti;while(1){charid[20];intindex;printf("请输入要删除的学生的学号:"); seanf("%s",&id);getchar();index=Student_SearchByIndex(id);if(index==-1){printf("学生不存在!\n");}else{printf("你要删除的学生信息为:\n");Student_DisplaySingle(index);printf("是否真的要删除?(y/n)");if(getchar()==='y'){for(i=index;i
if(strcmp(students[i].ID,id)==O)
returni;
return-1;
/*通过姓名返回数组下标*/
intStudent_SearchByName(charname[])
for(i=0;i{if(strcmp(students[i].Name,name)==0){returni;}}return-1;}/*显示单条学生记录*/voidStudent_DisplaySingle(intindex){printf("%10s%10s%8s%8s%8s%10s\n","学号","姓名","成绩","成绩","成绩","平均成绩");printf("\n");printf("%10s%10s%8.2f%8.2f%8.2f%10.2f\n",students[index].ID,students[index].Name,students[index].Mark1,students[index].Mark2,students[index].Mark3,students[index].Average);}/*插入学生信息*/voidStudent_lnsert(){while(1) printf("请输入学号:"); seanf("%s",&students[num].ID);getchar();printf("请输入姓名:");seanf("%s",&students[num].Name);getchar();printf("请输入成绩:");seanf("%f",&students[num].Mark1);getchar();printf("请输入成绩:");seanf("%f",&students[num].Mark2);getchar();printf("请输入成绩:");scanf("%f",&students[num].Mark3);getchar();students[num].Average=Avg(students[num]);num++;printf("是否继续?(y/n)");if(getchar()=='n'){break;}}}/*修改学生信息*/voidStudent_Modify()//floatmark1,mark2,mark3;while(1){charid[20];intindex;printf("请输入要修改的学生的学号:");seanf("%s",&id);getchar();index=Student_SearchBylndex(id);if(index==-1){printf("学生不存在!\n");}else{printf("你要修改的学生信息为:\n");Student_DisplaySingle(index); printf("--请输入新值--\n"); printf("请输入学号:"); seanf("%s",&students[index].ID);getchar();printf("请输入姓名:");scanf("%s",&students[index].Name);getchar();printf("请输入成绩:");scanf("%f",&students[index].Mark1);getchar();printf("请输入成绩:");scanf("%f",&students[index].Mark2);getchar();printf("请输入成绩:");scanf("%f",&students[index].Mark3);getchar();students[index].Average=Avg(students[index]);}printf("是否继续?(y/n)");if(getchar()=='n'){break;}}}/*删除学生信息*/voidStudent_Delete(){inti;while(1){charid[20];intindex;printf("请输入要删除的学生的学号:"); seanf("%s",&id);getchar();index=Student_SearchByIndex(id);if(index==-1){printf("学生不存在!\n");}else{printf("你要删除的学生信息为:\n");Student_DisplaySingle(index);printf("是否真的要删除?(y/n)");if(getchar()==='y'){for(i=index;i
if(strcmp(students[i].Name,name)==0)
/*显示单条学生记录*/
voidStudent_DisplaySingle(intindex){
printf("%10s%10s%8s%8s%8s%10s\n","学号","姓名","成绩","成绩","成
绩","平均成绩");
printf("
\n");
printf("%10s%10s%8.2f%8.2f%8.2f%10.2f\n",students[index].ID,students[index].Name,
students[index].Mark1,students[index].Mark2,students[index].Mark3,students[index].Average);
/*插入学生信息*/
voidStudent_lnsert()
while
(1)
请输入学号:
");
seanf("%s",&students[num].ID);
getchar();
printf("请输入姓名:
seanf("%s",&students[num].Name);getchar();
printf("请输入成绩:
seanf("%f",&students[num].Mark1);getchar();
seanf("%f",&students[num].Mark2);getchar();
scanf("%f",&students[num].Mark3);
students[num].Average=Avg(students[num]);
num++;
printf("是否继续?
(y/n)");
if(getchar()=='n')
break;
/*修改学生信息*/
voidStudent_Modify()
//floatmark1,mark2,mark3;
charid[20];
intindex;
printf("请输入要修改的学生的学号:
seanf("%s",&id);
index=Student_SearchBylndex(id);
if(index==-1)
printf("学生不存在!
else
printf("你要修改的学生信息为:
Student_DisplaySingle(index);
printf("--
请输入新值--\n");
");
seanf("%s",&students[index].ID);getchar();
scanf("%s",&students[index].Name);getchar();
scanf("%f",&students[index].Mark1);getchar();
scanf("%f",&students[index].Mark2);getchar();
scanf("%f",&students[index].Mark3);
students[index].Average=Avg(students[index]);
/*删除学生信息*/
voidStudent_Delete()
请输入要删除的学生的学号:
index=Student_SearchByIndex(id);
学生不存在!
}else
你要删除的学生信息为:
是否真的要删除?
if(getchar()==
='y')
for(i=index;i
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2