青春有我
#include #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);}elseexit(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