范文无忧网计划总结报告汇报

数据结构课程设计报告学生成绩管理系统的源代码

01月02日 编辑 fanwen51.com

#include #include struct student { char name[60]; char ID[7]; int score; }; int dq(struct student st[]); void xianshi(); void bc(struct student st[]); void add(); void select(); void zz(); void chazhao(); void xhcz(); void xmcz(); void del(); void xmsc(); void xhsc(); void tj(); void px(); void bjg(); void xg(); void xhxg(); void xmxg(); void bca(); void fh(); struct student st[300]; //这个数组用来保存所有的学生信息 和文件里面的一致 int Number=0; //记录总的学生人数 也就是数组/文件里面的学生人数 void main() { int choose=0; FILE *fp=NULL; char yesorno; if((fp=fopen("C://student。

dat","rb"))==NULL) { printf("\n=========>提示:文件不存在,是否要创建一个?(y/n)\n"); scanf("%c",&yesorno); if(yesorno=='y'||yesorno=='Y') { //这里仅为了建立文件 fp=fopen("C://student。 dat","wb"); fclose(fp); } else exit(0); } else { Number=dq(st); //要是文件只能够已经有数据 将数据初始化到数组中 } system("cls"); while(true) { xianshi(); printf("\t\t====>请选择:"); scanf("%d",&choose); system("cls"); switch(choose) { case 0: exit(0); //退出 break; case 1: add(); fh();//增加学生成绩 break; case 2: select(); fh();//查看学生成绩 break; case 3: chazhao(); fh();// 查找 break; case 4: del(); fh();//删除 break; case 5: tj(); fh();//统计 break; case 6: px(); fh();//排序 break; case 7: bjg(); fh();//输出不及格 break; case 8: xg(); fh();//修改 break; case 9:zz(); fh();//作者 break; case 10:bca(); fh();//保存 break; default: break; } fflush(stdin); getchar(); system("cls"); } } void bca() { printf("\t=====程序在运行时已自动保存。

。。。。\n"); } void fh() { printf("\t===>按Enter键返回主菜单\n"); } void xg() //修改学生信息 { int way=0; printf("请选择修改查找方式\n"); printf("1 按姓名查找修改\n"); printf("2 按学号查找修改\n"); scanf("%d",&way); switch(way) { case 1: xmxg(); break; case 2: xhxg(); break; default: printf("输入有误,结束!\n"); break; } } //按姓名修改 void xmxg() { FILE *fp=NULL; char name[60]; int i=0; int changeIndex=0; int index=0; printf("请输入要修改的学生姓名:"); scanf("%s",name); for (i=0;i修改成功\n"); } void bjg() //输出不及格人数 { int i=0; printf("以下是不及格:\n"); printf("\t姓名\t学号\t成绩\n"); for (i=0;ist[j+1]。

score) { temp=st[j]; st[j]=st[j+1]; st[j+1]=temp; } } } printf("你想输出前几名的成绩:"); scanf("%d",&wantNUmber); if (wantNUmber>Number) { wantNUmber=Number; } printf("\t姓名\t学号\t成绩\n"); for(i=0;i name,st[i]。ID,st[i]。score); } } void tj()//统计 { int i=0; double sum=0。0; for(i=0;i name)==0) //如果查找到就删除 { for (j=i;j dat","wb"); for (i=0;i ID)==0) //如果查找到就删除 { for (j=i;j dat","wb"); for (i=0;i ID)==0) { printf("\t%s\t%s\t%d\n",st[i]。

name,st[i]。ID,st[i]。score); } } } void xmcz()//按姓名查找 { char name[7]; int i=0; printf("请输入要查找学生姓名:"); scanf("%s",name); system("cls"); printf("\t姓名\t学号\t成绩\n"); for (i=0;i name)==0) { printf("\t%s\t%s\t%d\n",st[i]。name,st[i]。ID,st[i]。score); } } } void zz() { printf("\t**********************************************************\n\n"); printf("\t^^^^^^^^^^ ^^^^^^^^^^\n\n"); printf("\t^^^^^^^^^ ^^^^^^^^^\n\n"); printf("\t^^^^^^^^ ^^^^^^^^\n\n"); printf("\t^^^^^^^^^ ^^^^^^^^^\n\n"); printf("\t^^^^^^^^^^ \n\n"); printf("\t**********************************************************\n\n"); } void select()//查看学生 { int i=0; printf("以下是全部学生成绩\n"); printf("\t姓名\t学号\t成绩\n"); for(i=0;i name,st[i]。

ID,st[i]。score); } } void add()//增加学生 { int numberTemp=0; int i=0; struct student temp; //临时保存信息 printf("请输入要增加学生成绩个数:"); scanf("%d",&numberTemp); for(i=0;i ID); printf("成绩:"); scanf("%d",& ore); st[Number++]=temp; //将刚添加的写入到数组 bc(&temp); //将刚添加的写入到文件 } printf("添加成功\n"); } void bc(struct student *st) { FILE *fp=NULL; fp=fopen("C://student。

dat","ab+"); fwrite(st,sizeof(struct student),1,fp); fclose(fp); } int dq(struct student st[]) { FILE *fp=NULL; int i=0; fp=fopen("C://student。 dat","rb"); while(fread(&st[i],sizeof(struct student),1,fp)) i++; fclose(fp); return i; } void xianshi() { printf("\t*****************************************************************\n"); printf("\t* *\n"); printf("\t* 学生成绩管理系统 *\n"); printf("\t* *\n"); printf("\t* [1] 增加学生成绩 [2] 查看学生成绩 *\n"); printf("\t* [3] 查找学生成绩 [4] 删除学生成绩 *\n"); printf("\t* [5] 统计(总成绩和平均分) [6] 输出前N名学生成绩 *\n"); printf("\t* [7] 输出不及格人数 [8] 修改学生信息 *\n"); printf("\t* [9] 关于作者 [10] 保存数据 *\n"); printf("\t* [0] 退出系统 *\n"); printf("\t*****************************************************************\n"); } 。

推荐阅读
图文推荐
栏目列表