C语言编程的学生c语言销售管理系统统(我编的程序,请问哪里有问题啊)

求一个学生成绩管理系统(用c语言编写)
求一个学生成绩管理系统(用c语言编写)
学生包含以下信息项:学号、姓名、学院、班级、高数成绩、英语成绩、C语言成绩、总分、平均分。系统的主要功能包括:1. 创建学生成绩信息文件,根据提示输入学生的各项信息,计算出总分和平均分,然后按学号对学生信息进行排序,并将排序后的学生成绩信息存储到一个二进制文件中。2. 增加学生信息,在原有学生信息文件的基础上增加新的学生成绩信息,要求:增加后的学生信息仍按学号排序,并继续保存至原文件。3. 删除学生信息,提示用户输入要进行删除操作的学号,如果在文件中有该信息存在,则将该学号所对应的学生信息删除,否则输出提示信息,并提示用户选择是否继续进行删除操作。4. 修改学生信息,提示用户输入要进行修改操作的学号,如果在文件中有该息存在,则将提示用户输入该学号对应的要修改的选项,结果保存至原文件,并提示用户选择是否继续进行修改操作。5. 按不同条件对学生信息进行查询操作,输出满足条件的学生信息。(1) 按学号查询,输入一个学号,输出对应的学生信息。(2) 按姓名查询,包括精确查询(输入全名),模糊查询(输入姓)。(3) 按学院查询,输入学院名称,输出该学院的全部学生的信息。(4) 按班级查询,输入班级名称,输出该班级的全部学生的信息。6. 按不同条件对学生成绩进行统计工作。(1) 按总分对学生信息进行排序(由高到低),输出排序后的信息,并将排序后的学生信息存放到一个新的二进制文件中。(2) 按平均分统计各个分数段的学生人数(不及格,60-69,70-79,80-89,90-100)。(3) 分别找出3门课程成绩最高的学生,并输出他们的信息。(4) 分别统计出3门课程的不及格率,并输出
昵称: guoyecheng &时间:
昵称: canshui &时间:
昵称: wangw8451 &时间:
昵称: eye_119_eye &时间:
昵称: qweworld &时间:寻求一个C语言编写的学生管理系统程序原代码。_百度知道
寻求一个C语言编写的学生管理系统程序原代码。
要有 添加 修改 删除 要有磁盘技术
程序关闭后 打开还能提取以前输入的那些信息。查找要有一定的条件判别 原代码 要求注释很多
OK,手头上没有任何资料可以查看.至于你们那些说10分太少了的人。算了。那你们就好好保留自己的产权,还不知道你们自己有没有真本事?我在此想要这个程序只是我自己设计的公司管理系统提取资料的时候出现了一些问题。才想到百度来求一个呵呵。你们要是觉得学生成绩管理系统是什么高级软件的话
提问者采纳
stu_del();&;/ for(k=j;k++) { strcpy(stu_temp[k];/&lt,fp)==1) { cout& },stu_temp[k+1],1; if(strcmp(input_& strcpy(stu_temp[k];/&年 龄&请输入要查询的姓名;&/&lt:& } &#47,1;&endl&/=age_temp1&&/ fwrite(&/ #include&//&&lt、返回上级目录&&年 龄&&0;&;///&#47:& &&&&//&quot,1;&#47?(选否请按数字键0)&&#47,sizeof(struct student);&//&/&#47.num)==0) { cout&i-1;/ return 1;endl&/&&/ &/ void show() { cout& while(fread(&&&quot:return 1;/ } / &/ while(fread(&i;)==0) { fileclose();&
cout&lt.name&/&#47.age&&&/年 龄&学 号&&/& int fileopen() { if((fp=fopen(FILENAME.name&endl&&#47,&&age_temp2。&quot.input_&&lt.h&&lt。#include&&& cin&fread(&stu_temp[k];& cout&&姓 名&姓 名& #define FILENAME &endl&lt。&&& cin&&/&/&//&& case 3;))==NULL) { fopen(FILENAME;&lt。&quot,fp)==1) { if(strcmp(num_&lt.输入年龄& for(k=0;endl&lt,变量命名函数命名你 应该可以知道;&temp,注释没有写; cout&lt,你看的时候包含一下;endl&&/学 号&/&quot!=0:&&&& &学 号&&&cin&& case 3;;&/&=age_temp2) { cout&& switch(input_temp) { case 1;& cout&&// int stu_add() { &&#47.name& void stu_del() { char name_temp[10]; cout&lt,fp)==1;&/&lt:&&&#47,fp);// } fp=fopen(FILENAME;&/&& cout&/ cout&&lt,fp))==1) {} while(1) { cout&lt,1;姓 名&/& fileclose(); fp2=fopen(FILENAME; &quot:exit(0);;/&& FILE *&&&/&name_3,1;& &/&姓 名&&/&lt.age=stu_temp[k+1];); cin&r&quot、按学号查询& && stu_temp[k];/ cout& } / endl&lt,&/&quot,k;///&endl&///删除完毕& cout&&lt、退出系统& } fclose(fp2);/&#47,j;/endl&&&#47:stu_search()帮你写了个;&& fileopen();&&& & cout&/& void stu_search_name() { char name_temp[10];&lt./&&/&&lt,语句不是最优 .num&lt.age&&/ endl&/ cin&w&endl& cout&//&&/0&endl.age&gt.age&/ fileopen();&& char num[10];& cin&gt,fp)==1) { if( cout&&&&/cin&&#47,sizeof(temp);//&lt,fp)==1) { if(strcmp(name_&& fileopen(),sizeof(temp);&姓 名& while((fread(&temp,name_temp)==0) { j=i; cout&&temp.&/&&& } } } int stu_search() {
&quot,&&name_& } void stu_search_num() { char num_temp[10]; return 0;&#47./); &quot. &&/ cout&&//&fread(&temp.num&&#47,1;&#47:stu_search_name();/);//k+1& } } } void main() { /&lt,stu_temp[k+1]; int temp=0;endl&//1;&&/&gt、按年龄段查询&quot:stu_add();& cin&& fileopen();&& while(fread(&&;文件打开失败重新创建记录文件& cout&&#47:&/ &&& cout&;/ int input_temp=0;&/&& for(i=0;&/&/1、查询学生信息; case 0;&&#47,sizeof(struct student); cin&gt.name,&&&#47,fp),temp.name)==0) { cout& } FILE *fp2;//&k& &/ fileopen();学 号&quot,可能还又瞒多问题没有暴露出来;学 号&&3;&&lt,sizeof(temp)、按姓名查询&&输入学号;//是否继续;& show(),1.name&&&&/ &请选择服务类型;&endl,& struct student { char name[10];input_& &/&&lt,没有做很多调试; case 0;k++) { fwrite(&stu_temp[k];&&/ } } fileclose();/ rewind(fp);&输入学生姓名:stu_search_num();&请选择查询类型&; } } fileclose(); while(1) { cout& age_temp1;&/temp.age&/&#47.num&&&&/&endl&&/&lt.num);// cout&&/&&&quot,sizeof(temp);&&&/ /&endl&/ } } fileclose();&&&&lt,1;&lt:&quot,fp);&lt:stu_search_age()。&cin&&quot,又什么不知道的可以再说;///temp,sizeof(temp);k++) ;&#47.num&& } void stu_search_age() { int age_temp1=0;&& } } } /请输入起始年龄; for(k=0;&&endl&2;/ char input_temp[1];/&& case 2; /&//&&lt、删除学生信息;&&请输入要删除学生的姓名; switch(temp) { case 1;/请输入要查询的姓名;&&& cout&&;&&temp.dat&/&&#47.h&gt,sizeof(temp);&/&学生管理系统&& & cout&,&//&// cout&lt.name) ;0;/&& & & while(1) { cout&请驶入终止年龄;&/&年 龄&r+&endl&&&/ } } student stu_temp[i];&/ temp=fileopen();/&/&/ int age_temp2=0; return 1;/2;& } void fileclose() { fclose(fp); cout&&quot:& case 2;& } rewind(fp);/&; cout& &&/cin&/endl& cout&i++) { if(strcmp(temp,sizeof(temp);w&quot.age&//num_&年 龄&&&&lt、添加学生信息; while(fread(&/student,1;&#47
提问者评价
虽然是C++ 但还是感谢你我要的是C的。呵呵。
其他类似问题
您可能关注的推广回答者:回答者:
学生管理系统的相关知识
按默认排序
其他2条回答
拉倒吧你10分你叫我们给你写?还要求要求注释很多
10分换啊?你等到头发变白吧
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁有关C语言编程问题,谁能帮我修改下我编好的程序的错误?是有关学生证管理的程序
有关C语言编程问题,谁能帮我修改下我编好的程序的错误?是有关学生证管理的程序
#include&stdio.h&#include&stdlib.h&#include&string.h&#include&conio.h& #define N 100typedef struct {char name[10];char xuezhi[10];char xueli[10];char xueyuan[30];char addr[10];}STU;
int count_male,count_int i=0,STU stu[N]={0};FILE *void openfile();void savefile();void editmenu();void name();void num();void add();void dele();void modify();void look();void menu_tongji();void annannv();void anbanji();void comparenum(tempclass,num);void main()
{&& do&{& system("cls");&printf("\n\n\n\n\n\n\n");&printf("&&&&&&&&&&&&&& |◆╬┅┅╬◆&& 学生证管理系统& ◆╬┅┅╬◆|\n");&printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");&printf("&&&&&&&&&&&&&& |&&&&&&& 请选择输入设置 (0-5):&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 1--打开&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 2--保存&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 3--编辑&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 4--查找&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 5--统计管理&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 0--退出&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");&printf("&&&&&&&&&&&&&& |&&&&& 计算机& 09-1& 刘婷婷&& 聂琛& ︶ㄣ&&& |\n");&printf("&&&&&&&&&&&&&& |作业认真度:★★★★★★★★★★★★★★★ |\n");&&&&&&&&&&&&&& &printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");
&fflush(stdin);&scanf ("%c",&choose);&& switch(choose)&&&& {case '1':openfile();&&&&& case '2':savefile();&&&&& case '3':editmenu();&&&&& case '4':look();&&&&& case '5':menu_tongji();&&&& &&&&& case '0':&& exit(0);&&&&& default :printf("输入错误,请重新输入!");&&&&& }&}while(1);
&void editmenu()&{&&&& do&& {system("cls");&& printf("\n\n\n\n\n\n\n\n\n\n");&&& printf("&&&&&&&& |***********************************************|\n");&&& printf("&&&&&&&& |&&&&&&& 请选择输入设置 (0-3):&&&&&&&&&&&&&&&&& |\n");&&& printf("&&&&&&&& |***********************************************|\n");&&& printf("&&&&&&&& |&&&&&&&&&&&&& 1---增加记录&&&&&&&&&&&&&&&&&&&& |\n");&&& printf("&&&&&&&& |&&&&&&&&&&&&& 2---删除记录&&&&&&&&&&&&&&&&&&&& |\n");&&& printf("&&&&&&&& |&&&&&&&&&&&&& 3---修改记录&&&&&&&&&&&&&&&&&&&& |\n");&&& printf("&&&&&&&& |&&&&&&&&&&&&& 4---查看新增记录&&&&&&&&&&&&&&&& |\n");&&& printf("&&&&&&&& |&&&&&&&&&&&&& 0---返回&&&&&&&&&&&&&&&&&&&&&&&& |\n");&&& printf("&&&&&&&& |***********************************************|\n");&&&&&&& & scanf(" %c",&choose);
&&&&& switch (choose)&& {&& case'1':add();&&&&& case'2':dele();&&&&& case'3':modify();&&&&&&&& case'4':look();&&&&& case'0':&&&&& default:printf("输入错误,请重新输入!\n");&& }&& } while(1);&}
&void add()&{&do&{printf("请输入学号:");& fflush(stdin);& scanf("%d",&stu[i].num);& fflush(stdin);& printf("请输入姓名:");& scanf("%s",stu[i].name);& fflush(stdin);& printf("请输入性别:");& scanf("%c",&stu[i].sex);& fflush(stdin);& printf("请输入班级:");& scanf("%s",stu[i].addr);& fflush(stdin);& printf("请输入学历*\n");& fflush(stdin);& scanf("%s",stu[i].xueli);& printf("请输入学院*\n");& fflush(stdin);& scanf("%s",stu[i].xueyuan);& printf("请输入学制*\n");& fflush(stdin);& scanf("%s",stu[i].xuezhi);& i++;& printf("如果您想继续请按 y,否则请按 n:\n");& fflush(stdin);& scanf("%c",&ch);&}while (ch!='n'&&ch!='N');&printf("学号& 姓名&& 性别& 班级& 学历& 学院& 学制\n");&fflush(stdin);&for (m=0;m&i;m++)&printf("%d&&&& %s&&&& %c&&&& %s&&&& %s&&& %s&&&& %s\n",stu[m].num,stu[m].name,stu[m].sex,stu[m].addr,stu[m].xueli,stu[m].xueyuan,stu[m].xuezhi);&getch();&}
&void look()&{& &char ch1;&system("cls");&printf("请输入按何种方式查询:\n");&printf("1-姓名,2-学号:");&ch1=getchar();/*用字符接收*/&switch(ch1)/*判断*/&{& case '1':name();& case '2':num();&}&getch();/*让屏幕停留同时按任意键返回*/&&}
&void name(){&FILE *STU stud[1]={0};&char name[10];&printf("\n输入要查学生的姓名: ");scanf("%s",name);&if((fp=fopen("student.dat","rb"))==NULL) {printf("can't open file!\n");exit(0);}&while(!feof(fp))&{& fread(&stud[1],sizeof(stu),1,fp);& if(strcmp(stud[1].name,name)==0)/*按姓名查询时判断输入的姓名是否存在,会循环从数据中找取*/& {&& printf("学生信息如下:\n");&& printf("学号& 姓名&& 性别& 班级& 学历& 学院& 学制\n");&& printf("%d&&&& %s&&&& %c&&&& %s& %s& %s& %s\n",stud[1].num,stud[1].name,stud[1].sex,stud[1].addr,stud[1].xueli,stud[1].xueyuan,stud[1].xuezhi);&&& }&}&if(feof(fp)) printf("查找失败,该学生不存在!");&fclose(fp);}
void num(){&FILE *&STU stude[1]={0};&&printf("\n输入要查学生的学号: ");scanf("%d",&num);&if((fp=fopen("student.dat","rb"))==NULL) {printf("can't open file!\n");exit(0);}&while(!feof(fp))&{& fread(&stude[1],sizeof(stu),1,fp);& if(stude[1].num==num)/*按学号查询时判断输入的学号是否存在,会循环从数据中找取*/& {&& printf("&&& 学生的信息如下:\n");&& printf("学号& 姓名&& 性别& 班级& 学历& 学院& 学制\n");&& printf("%d&&&& %s&&&& %c&&&& %s& %s& %s& %s\n",stude[1].num,stude[1].name,stude[1].sex,stude[1].addr,stude[1].xueli,stude[1].xueyuan,stude[1].xuezhi);&&& }&}&if(feof(fp)) printf("查找失败!!!"); &fclose(fp);}
void openfile(){&if((fp=fopen("d:\\1.dat","r"))==NULL)&{&printf("不能打开此文件\n");&&}while (i&N){fscanf(fp,"%d%s%c%s%s%s%s",&stu[i].num,stu[i].name,&stu[i].sex,stu[i].addr,stu[i].xueli,stu[i].xueyuan,stu[i].xuezhi);printf("%d %s %c %s %s %s %s",stu[i].num,stu[i].name,stu[i].sex,stu[i].addr,stu[i].xueli,stu[i].xueyuan,stu[i].xuezhi);i++;}}
void savefile(){int j = 100;&FILE& *//定义了个文件指定&fp = fopen("学生记录.txt","w+");//以写入形式打开文件&fputc(j,fp);//写入文件&fclose(fp);//}
void modify(){& int n,m,j;&&&& printf("请输入想要修改的学生的学号:");&& scanf("%d",&n);&&&&&& for(m=0;m&i;m++)&&& {&& if(n==stu[m].num)&&&& printf("num:%d name:%s sex:%c addr:%s xueli:%s xueyuan:%s xuezhi:%s");&&& &&&& &&&&& printf("如果您想继续请按 y,否则请按 n:\n");&&&&&&&& scanf(" ch=%c",&ch);&&&&&&&&& while(ch!='n'&&ch!='N')&&& {&&&&&&& printf("学号:\n");&&&&&&& fflush(stdin);&&&& scanf("%d",&stu[m].num);& &&&& fflush(stdin);&&&&&&& printf("姓名:\n");&&&&&&& fflush(stdin);&&&& scanf("%s",stu[m].name);&&&&&&& printf("性别:\n");&&&& fflush(stdin);&&&&&&& scanf("%c",&stu[m].sex);&&&&&&& printf("班级:\n");&&&& fflush(stdin);&&&&&&& scanf("%s",stu[m].addr);&&&& printf("学历:\n");&&&&&&& fflush(stdin);&&&& scanf("%s",&stu[m].xueli);&&&& printf("学院:\n");&&&&&&& fflush(stdin);&&&& scanf("%s",&stu[m].xueli);&&&& printf("学制:\n");&&&&&&& fflush(stdin);&&&& scanf("%s",&stu[m].xueli);&&&&&&&& }&&& }}
&void menu_tongji()//统计功能菜单 { &printf("********************************\n"); &printf("*统计功能:*\n"); &printf("*1.计算男女人数*\n"); &printf("*2.计算班级人数*\n"); &printf("*3.结束本次统计*\n"); &printf("********************************\n"); &printf("请选择相应功能:");
&& fflush(stdin);& scanf ("%c",&choice);& while(choice!=3)& {&& switch(choice)&& {&&& //选项1,统计男女个数&& case 1:annannv();
&&& //选项2,统计给定班级的人数&& case 2:anbanji();&&& &&& && default://缺省项&& }&& printf("请选择相应功能:");&& scanf("%c",&choice);& }
& void annannv()&{temp=& &&& count_male=0;//男生数&&& count_female=0;//女生数&&& while(temp!=NULL)//检索链表查找&&& {&&&& if(strcmp(temp-&sex,"M")==0||strcmp(temp-&sex,"m")==0) count_male++;&&&& if(strcmp(temp-&sex,"F")==0||strcmp(temp-&sex,"f")==0) count_female++;&&&& temp=temp-&&&& }&&& printf("男:%d\n",count_male);&&& printf("女:%d\n",count_female);&&& if(test!=count_male+count_female)&&&& printf("本次统计数据与之前系统得到的学生人数不符,请检查系统文件。\n");}& &&& }&&& void anbanji()&{printf("请输入需要统计的班级号);&&& scanf("%s",tempclass);&&& while(strlen(tempclass)&6)//假定学号前6位为班级号&&& {&&&& printf("错误的班级号,请重新输入:"); &&&& scanf("%s",tempclass);&&& }&&& count=0;//班级学生数&&& temp=&&& while(temp!=NULL)//检索链表,并打印相应学生的学生证信息&&& {&&&& if(comparenum(tempclass,temp-&num))&&&&& count++;&&&& temp=temp-&&&& }&&& printf("班级人数(%s): %d\n",tempclass,count);}&
printf("\n请输入班级号:");& scanf("%s",&addr);& while(strlen(addr)&6)//假定学号前6位为班级号& {&& printf("错误的班级号,请重新输入:"); && scanf("%s",addr);& }& count=0;//班级学生数& temp=
& while(temp!=NULL)//检索链表,并打印相应学生的学生证信息& {&& if(comparenum(adde,temp-&num))&& { //打印属于这个班级的学生&& printf("姓名:%s\n",temp-&name); && if(strcmp(temp-&sex,"男")==0||strcmp(temp-&sex,"男")==0)&&& printf("性别:男\n");&& else&&& printf("性别:女\n");&& printf("学号:%s\n",temp-&num);&& &&& count++;& }&& temp=temp-&& & if(count==0) && printf("在该班级中未能找到结果!\n");& }&
#include &stdio.h&#include &stdlib.h&#include &conio.h&#include &string.h&#define N 100typedef struct &{& char name[10];& char sex[10];& char nation[10];&& char study[10];& char classes[10];& char year[10];}void menu()&&&&&&&& {&&&&&&&&&&&& &&& system("cls");&&&&&&& printf("\n\n\n\n\n\n\n");&printf("&&&&&&&&&&&&&& |◆╬┅┅╬◆&& 学生证管理系统& ◆╬┅┅╬◆|\n");&printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");&printf("&&&&&&&&&&&&&& |&&&&&&& 请您选择相应功能 (0-5):&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 1--信息录入&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 2--查询&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 3--修改&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 4--显示&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 5--删除&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |&&&&&&&& 0--退出&&&&&&&&&&&&&&&&&&&&&&&&&& |\n");&printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");&printf("&&&&&&&&&&&&&& |&&&&& 计算机& 09-1& 刘婷婷&& 聂琛& ︶ㄣ&&& |\n");&printf("&&&&&&&&&&&&&& |作业优秀度:★★★★★★★★★★★★★★★ |\n");&&&&&&&&&&&&&& &printf("&&&&&&&&&&&&&& |-------------------------------------------|\n");
}void input(){&FILE *& &if((fp=fopen("student.dat","ab"))==NULL) {printf("can't open file!\n");exit(0);}&printf("\n录入格式: 姓名 性别 族别 学号 专业 班级 学制 当输入姓名为ps结束录入\n");&while(1) &{& & scanf("%s",xs.name);& if(strcmp(xs.name,"ps")==0)& scanf("%s%s%d%s%s%s%",&xs.sex,&xs.nation,&xs.num,&xs.study,&xs.classes,&xs.year);& fwrite(&xs,sizeof(stu),1,fp); &}&fclose(fp);}void xingming(){&FILE *&&char name[10];&printf("\n输入要查学生的姓名: ");&scanf("%s",name);&if((fp=fopen("student.dat","rb"))==NULL) {printf("can't open file!\n");exit(0);}&while(!feof(fp))&{& fread(&xs,sizeof(stu),1,fp);& if(strcmp(xs.name,name)==0)& {&& printf("&&& 学生的信息如下:\n");&& printf("\n%10s %10s %10s %6s %10s %10s %10s\n","姓名","性别","族别","学号","专业","班级","学制");&& printf("%10s %10s %10s %6d %10s %10s %10s\n",xs.name,xs.sex,xs.nation,xs.num,xs.study,xs.classes,xs.year);&&& }&}&if(feof(fp)) printf("查找失败!!!"); &fclose(fp);}void xuehao(){&FILE *&&&printf("\n输入要查学生的学号: ");scanf("%d",&num);&if((fp=fopen("student.dat","rb"))==NULL) {printf("can't open file!\n");exit(0);}&while(!feof(fp))&{& fread(&xs,sizeof(stu),1,fp);& if(xs.num==num)/*按学号查询时判断输入的学号是否存在,会循环从数据中找取*/& {&& printf("&&& 学生的信息如下:\n");&& printf("\n%10s %10s %10s %6s %10s %10s %10s\n","姓名","性别","族别","学号","专业","班级","学制");&& printf("%10s %10s %10s %6d %10s %s %10s\n",xs.name,xs.sex,xs.nation,xs.num,xs.study,xs.classes,xs.year);&&& }&}&if(feof(fp)) printf("查找失败!!!"); &fclose(fp);}void banji(){&FILE *&&char classes[10];&printf("\n输入要查学生的班级: ");&scanf("%s",classes);&if((fp=fopen("student.dat","rb"))==NULL) {printf("can't open file!\n");exit(0);}&while(!feof(fp))&{& fread(&xs,sizeof(stu),1,fp);& if(strcmp(xs.classes,classes)==0)& {&& printf("&&& 学生的信息如下:\n");&& printf("\n%10s %10s %10s %6s %10s %10s %10s\n","姓名","性别","族别","学号","专业","班级","学制");&& printf("%10s %10s %10s %6d %10s %10s %10s\n",xs.name,xs.sex,xs.nation,xs.num,xs.study,xs.classes,xs.year);&&& }&}&if(feof(fp)) printf("查找失败!!!"); &fclose(fp);}void search(){&char ch1;&system("cls");&printf("请输入按何种方式查询:\n");&printf("1-姓名,2-学号, 3-班级:");&ch1=getchar();/*用字符接收*/&switch(ch1)/*判断*/&{& case '1':xingming();& case '2':xuehao();& case '3':banji();& }&getch();}void modi(){&&FILE *&&system("cls");&printf("\n输入要查学生的学号: ");&scanf("%d",&num);&if((fp=fopen("student.dat","rb+"))==NULL) {printf("can't open file!\n");exit(0);}&while(!feof(fp))&{& fread(&xs,sizeof(stu),1,fp);& if(xs.num==num)& {& && printf("&& 修改前学生的信息如下:\n");&& printf("\n%10s %10s %10s %6s %10s %10s\n","姓名","性别","族别","学号","专业","班级","学制");&& printf("%10s %10s %10s %6d %10s %10s\n",xs.name,xs.sex,xs.nation,xs.num,xs.study,xs.classes,xs.year);&& printf("\n请输入该生的姓名:");scanf("%s",&xs.name);&& printf("\n性别:");scanf("%s",&xs.sex);&& printf("\n族别:");scanf("%s",&xs.nation);&& printf("\n专业:");scanf("%s",&xs.study);&& printf("\n班级:");scanf("%s",&xs.classes);&& printf("\n学制:");scanf("%s",&xs.year);&&& }&}&if(!feof(fp))&{&& printf("& \n 修改后的学生的信息如下:\n");printf("\n%10s %10s %10s %6s %10s %10s %10s\n","姓名","性别","族别","学号","专业","班级","学制");printf("%10s %10s %10s %6d %10s %10s %10s\n",xs.name,xs.sex,xs.nation,xs.num,xs.study,xs.classes,xs.year);fseek(fp,sizeof(stu),1);fwrite(&xs,sizeof(stu),1,fp);&}&else&printf("\n学生不存在,修改失败!!"); &fclose(fp);&getch();}void print(){&FILE *&&system("cls");&if((fp=fopen("student.dat","rb"))==NULL) {printf("can't open file!\n");exit(0);}&printf("\n%10s %10s %10s %6s %10s %10s %10s \n","姓名","性别","族别","学号","专业","班级","学制");&while(!feof(fp))&{& fread(&xs,sizeof(stu),1,fp);& if(feof(fp))& printf("%10s %10s %10s %6d %10s %10s %10s\n",xs.name,xs.sex,xs.nation,xs.num,xs.study,xs.classes,xs.year);&}&fclose(fp);&getch();}void dele(){&stu xs[N];&FILE *&char name[10];&int i=0,len,k=-1;&system("cls");&printf("\n输入要删除的学生姓名: ");scanf("%s",name);&if((fp=fopen("student.dat","rb+"))==NULL) {printf("can't open file!\n");exit(0);}&while(!feof(fp))&{& fread(&xs[i],sizeof(stu),1,fp);& if(feof(fp))& if(strcmp(xs[i].name,name)==0) k=i;& i++;&}&fclose(fp);&len=i;&if(k&=0)&{& if((fp=fopen("student.dat","wb+"))==NULL) {printf("can't open file!\n");exit(0);}& for(i=0;i&i++)& {&& if(i==k)&& fwrite(&xs[i],sizeof(stu),1,fp);& }& fclose(fp);&}&else {printf("删除失败!!!\n");getch();} &print();}void main(){& &&while(1)&{& menu();& ch=getch();& if(ch=='0')& switch(ch)& {& case '1':input();& case '2':search();& case '3':modi();& case '4':print( );& case '5':dele();& }&}&printf("\n欢迎使用!!!\n"); }
其他回答 (1)
有什么错先描述一下啊
相关知识等待您来回答
编程领域专家}

我要回帖

更多关于 c语言图书馆管理系统 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信