C程序学生成绩管理系统代码.docx
- 文档编号:5612345
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:22
- 大小:17.75KB
C程序学生成绩管理系统代码.docx
《C程序学生成绩管理系统代码.docx》由会员分享,可在线阅读,更多相关《C程序学生成绩管理系统代码.docx(22页珍藏版)》请在冰点文库上搜索。
C程序学生成绩管理系统代码
#include
#include
#include
intc;
voidinformation();/*学生信息*/
voidmenu();/*主菜单*/
voidchoose();/*是否返回主菜单的选择*/
voiderror();/*报错*/
voidoutput_();/*输出后问是否返回主菜单*/
voidoutput_2();/*输出*/
voidfind();/*查询*/
voiddelete_();/*删除*/
voidrank();/*排序*/
voide();/*退出*/
structstudent
{
charnum[10];/*学号*/
charname[8];/*学生姓名*/
charsex[3];/*性别*/
charsnum[10];/*课程号*/
charsubject[10];/*课程名*/
intcredit;/*学分*/
intscore1;/*平时分*/
intscore2;/*实验分*/
intscore3;/*卷面分*/
doubleadd;/*平均分*/
doublefinal;/*最后学分*/
}stu[10],temp;
voidmain()/*主函数*/
{
intb;
printf("\n\n--------学生管理系统--------\n\n");
printf("制作者:
游义娟\n");
printf("***************************************************\n");
printf("|1…………学生成绩输入|\n");
printf("|2…………输出表格|\n");
printf("|3…………查询|\n");
printf("|4…………删除学生记录|\n");
printf("|5…………排序|\n");
printf("|6…………退出|\n");
printf("***************************************************\n\n");
printf("***如果文件中无学生数据,请先输入数据***\n\n");
printf("请输入您要执行的功能对应的数字:
");
scanf("%d",&b);
switch(b)
{
case1:
information();break;
case2:
output_();break;
case3:
find();break;
case4:
delete_();break;
case5:
rank();break;
case6:
e();break;
}
if(b!
=1&&b!
=2&&b!
=3&&b!
=4&&b!
=5)
error();
}
voidmenu()/*菜单*/
{
intb;
printf("\n\n--------主菜单--------\n\n");
printf("***************************************************\n");
printf("|1…………学生成绩输入|\n");
printf("|2…………输出表格|\n");
printf("|3…………查询|\n");
printf("|4…………删除学生记录|\n");
printf("|5…………排序|\n");
printf("|6…………退出|\n");
printf("***************************************************\n\n");
printf("请输入您要执行的功能对应的数字:
");;
scanf("%d",&b);
switch(b)
{
case1:
information();break;
case2:
output_();break;
case3:
find();break;
case4:
delete_();break;
case5:
rank();break;
case6:
e();break;
}
if(b!
=1&&b!
=2&&b!
=3&&b!
=4&&b!
=5)
error();
}
voidchoose()/*选择*/
{
intf;
printf("\n\n******是否返回主菜单******\n");
printf("---------------------------------------\n");
printf("||1…………是||\n");
printf("||2…………退出||\n");
printf("---------------------------------------\n\n");
printf("请输入您的选择:
");
scanf("%d",&f);
if(f==1)
menu();
elseif(f==2)
e();
else
error();
}
voiderror()/*报错*/
{
intf;
printf("\n\n****您的输入错误,是否返回主菜单****\n");
printf("---------------------------------------\n");
printf("||1…………是||\n");
printf("||2…………退出||\n");
printf("---------------------------------------\n\n");
printf("请输入您的选择:
");
scanf("%d",&f);
if(f==1)
menu();
elseif(f==2)
e();
else
error();
}
voidinformation()/*输入*/
{
inti;
//FILE*fp;
printf("\n***请输入学生的个数<=10***\n\n请输入你要输入的学生的个数:
");
scanf("%d",&c);
if(c<=10)
{
for(i=0;i { printf("\n\n请输入第%d个学生的信息: \n",i+1); printf("学号: "); scanf("%s",stu[i].num); printf("姓名: "); scanf("%s",stu[i].name); printf("性别: "); scanf("%s",stu[i].sex); printf("课程号: "); scanf("%s",stu[i].snum); printf("课程名: "); scanf("%s",&stu[i].subject); printf("学分: "); scanf("%d",&stu[i].credit); printf("平时成绩: "); scanf("%d",&stu[i].score1); printf("实验成绩: "); scanf("%d",&stu[i].score2); printf("卷面成绩: "); scanf("%d",&stu[i].score3); stu[i].add=stu[i].score1*0.15+stu[i].score2*0.15+stu[i].score3*0.7; switch((int)(stu[i].add)/10) { case10: stu[i].final=stu[i].credit;break; case9: stu[i].final=stu[i].credit;break; case8: stu[i].final=stu[i].credit*0.8;break; case7: stu[i].final=stu[i].credit*0.75;break; case6: stu[i].final=stu[i].credit*0.6;break; case5: stu[i].final=0;break; case4: stu[i].final=0;break; case3: stu[i].final=0;break; case2: stu[i].final=0;break; case1: stu[i].final=0;break; case0: stu[i].final=0;break; } } } else { printf("\n! ! ! ! ! 您输入的数已超出范围,请重新输入! ! ! ! ! \n"); information(); } /*fp=fopen("stud","w"); for(i=0;i if(fwrite(&stu[i],sizeof(structstudent),1,fp)! =1) printf("filewriteerror\n"); fclose(fp);*/ printf("\n输入完毕\n"); choose(); } voidoutput_()/*输出*/ { //FILE*fp; inti; //if((fp=fopen("stud","r"))==NULL) //{ //printf("cannotopenfile.\n"); //exit(0); //} //fp=fopen("stud","r"); for(i=0;i { //fread(&stu[i],sizeof(structstudent),1,fp); printf("\n\n学号\t姓名\t性别\t课程编号课程名称\n"); for(i=0;i { printf("%s\t%s\t%s\t%s\t%s\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].snum,stu[i].subject); } printf("\n\n学分平时成绩实验成绩卷面成绩综合实得学分\n"); for(i=0;i { printf("%d\t%d\t%d\t%d\t%3.2f\t%1.2f\n",stu[i].credit,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].add,stu[i].final); } } choose(); } voidoutput_2() { //FILE*fp; inti; /*if((fp=fopen("stud","r"))==NULL) { printf("cannotopenfile.\n"); exit(0); }*/ printf("\n\n****原始数据: ****\n"); printf("\n学号\t姓名\t性别\t课程编号课程名称\n"); for(i=0;i { printf("%s\t%s\t%s\t%s\t%s\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].snum,stu[i].subject); } printf("\n\n学分平时成绩实验成绩卷面成绩综合实得学分\n"); for(i=0;i { printf("%d\t%d\t%d\t%d\t%3.2f\t%1.2f\n",stu[i].credit,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].add,stu[i].final); } } voidfind()/*查询*/ { //FILE*fp; intk,j,f,q,judge=0; charm[10]; /*if((fp=fopen("stud","r"))==NULL) { printf("cannotopenfile.\n"); exit(0); }*/ printf("\n****是否输出原始数据****\n"); printf("---------------------------------------\n"); printf("||1…………是||\n"); printf("||2…………否||\n"); printf("---------------------------------------\n\n"); printf("请输入您的选择: "); scanf("%d",&k); printf("\n"); if(k==1) output_2(); elseif(k==2); else { printf("****您的输入错误,请重新输入选择****\n"); find(); } printf("\n\n---------查询学生信息----------\n"); printf("************************************\n"); printf("|1----按名字查询|\n"); printf("|2----按学号查询|\n"); printf("************************************\n"); printf("请选择: "); scanf("%d",&f); if(f==1) { printf("\n请输入您要查询的人的名字: "); scanf("%s",m); for(j=0;j { if(strcmp(m,stu[j].name)==0) { printf("\n\n*****您要查询的信息为*****\n"); printf("\n学号\t姓名\t性别\t课程编号课程名称\n"); printf("%s\t%s\t%s\t%s\t%s\n",stu[j].num,stu[j].name,stu[j].sex,stu[j].snum,stu[j].subject); printf("\n学分平时成绩实验成绩卷面成绩综合实得学分\n"); printf("%d\t%d\t%d\t%d\t%3.2f\t%1.2f\n",stu[j].credit,stu[j].score1,stu[j].score2,stu[j].score3,stu[j].add,stu[j].final); judge=1; } } } elseif(f==2) { printf("\n请输入您要查询的人的学号: "); scanf("%s",m); for(j=0;j { if(strcmp(m,stu[j].num)==0) { printf("\n\n*****您要查询的信息为*****\n"); printf("\n学号\t姓名\t性别\t课程编号课程名称\n"); printf("%s\t%s\t%s\t%s\t%s\n",stu[j].num,stu[j].name,stu[j].sex,stu[j].snum,stu[j].subject); printf("\n\n学分平时成绩实验成绩卷面成绩综合实得学分\n"); printf("%d\t%d\t%d\t%d\t%3.2f\t%1.2f\n",stu[j].credit,stu[j].score1,stu[j].score2,stu[j].score3,stu[j].add,stu[j].final); printf("\n"); judge=1; } } } else error(); if(judge==0) { printf("\n\n****数据库中无此人的信息,是否重新输入? ****\n"); printf("-----------------------------------------------\n"); printf("||1…………是||\n"); printf("||2…………返回主菜单||\n"); printf("||3…………退出||\n"); printf("-----------------------------------------------\n\n"); printf("请输入您的选择: "); scanf("%d",&q); if(q==1) find(); elseif(q==2) menu(); elseif(q==3) e(); else error(); } choose(); } voiddelete_()/*删除*/ { //FILE*fp; inti,j,flag=0,k,v,r,q; charm[10]; /*if((fp=fopen("stud","r"))==NULL) { printf("cannotopenfile.\n"); exit(0); }*/ printf("\n\n****是否输出原始数据****\n"); printf("---------------------------------------\n"); printf("||1…………是||\n"); printf("||2…………否||\n"); printf("---------------------------------------\n\n"); printf("请输入您的选择: "); scanf("%d",&k); if(k==1) output_2(); elseif(k==2); else { printf("****您的输入错误,请重新输入选择****\n"); delete_(); } //fclose(fp); printf("\n\n*******删除学生记录*******\n"); printf("----------------------------------------------\n"); printf("||1…………按名字删除||\n"); printf("||2…………按学号删除||\n"); printf("----------------------------------------------\n\n"); printf("请输入您的选择: "); scanf("%d",&v); if(v==1) { printf("\n请输入您要删除的人的名字: "); scanf("%s",m); for(i=0;i { if(strcmp(m,stu[i].name)==0) { for(j=i;j { strcpy(stu[j].name,stu[j+1].name); stu[j]=stu[j+1]; } flag=1; } } } elseif(v==2) { printf("\n请输入您要删除的人的学号: \n"); scanf("%s",m); for(i=0;i { if(strcmp(m,stu[i].num)==0) { for(j=i;j { strcpy(stu[j].num,stu[j+1].num); stu[j]=stu[j+1]; } flag=1; } } } else error(); if(flag==1) c=c-1; else { printf("\n\n****找不到您要删除的数据,是否重新输入? ****\n"); printf("-----------------------------------------------\n"); printf("||1…………是||\n"); printf("||2…………返回主菜单||\n"); printf("||3…………退出||\n"); printf("-----------------------------------------------\n\n"); printf("请输入您的选择: "); scanf("%d",&q); if(q==1) delete_(); elseif(q==2) menu(); elseif(q==3) e(); else error(); } printf("\n\n***是否输出删除后的数据***\n"); printf("---------------------------------------\n"); printf("||1…………是||\n"); printf("||2…………否||\n"); printf("---------------------------------------\n\n"); printf("请输入您的选择: "); scanf("%d",&r); if("r==1") { printf("\n\n*****删除后的数据*****\n"); /*if((fp=fopen("stud","w"))==NULL) { printf("cannotopenfile\n"); e
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序 学生 成绩管理系统 代码
文档标签
- 学生成绩管理系统Web程序
- 学生成绩管理系统顺序实现
- 成绩管理程序
- 学生成绩管理系统计算器程序
- 学生成绩管理系统代码
- 完整代码学生成绩管理系统
- 程序学生成绩管理系统代码
- C++酒店管理程序代码
- 学生成绩管理系统实现代码
- 学生社团管理程序C++
- 学生成绩管理系统VB程序
- 中间代码生成程序
- 学生成绩管理系统C++程序设计
- 学生成绩管理系统源程序
- java学生成绩管理系统代码
- C++学生成绩管理系统源代码
- 学生成绩管理系统C++编程
- WEB程序设计课程设计报告
- 学生成绩管理系统综合程序设计
- 语言程序设计课程设计歌手成绩管理系统
- 学生成绩管理系统程序设计
- 学生成绩管理系统报告程序
- Web程序设计作业报告
- 学生成绩管理系统Web程序设计
- Web程序设计课程设计报告
- 程序设计学生选课管理