1、/某地学生人数统计void c_dts(void);/党团员学生人数统计struct Data int year; int mounth; int day;struct student char num15;/学号 char name20;/姓名 char sex5;/性别 int age;/年龄 char zzmm20;/政治面貌 float score;/成绩 struct Data data;/出生日期 char address50;/地址int open(struct student stuMax);/打开文件void baocun(int number, struct student
2、 stuMax);/保存文件int main(void) Main_meau(); return 1;void Main_meau(void)/主菜单 int m=0,n; while(m=0) printf(nnn);*n *学*生*档*案*管*理*系*统* n *欢 迎 使 用*nnn 1-输入学生信息n 2-查询学生信息n 3-修改学生信息n 4-统计学生信息n 5-显示学生信息n 6-退出系统nnnn请输入选项: scanf(%d,&n); switch(n) case 1: input(); break; case 2: serch(); case 3: amend(); case
3、4: census(); case 5: show(); case 6: m=1; default: printf(输入错误,请重新输入.n void input(void)/输入学生信息 int number,i,k; struct student stuMax; k=open(stu); printf(请输入要增加的学生人数:n scanf(number); for(i=k+1;istui.data.year) number+;%d年以前出生的人数为:,Year,number);void c_ds(void)/某地学生人数统计 int i,k,number=0; char db30;请输入
4、地名:,db); if(strcmp(stui.address,db)=0)%s学生人数为:,db,number);void c_dts(void)/党团员学生人数统计 int i,k,da=0,tu=0; if(strcmp(stui.zzmm,团员 tu+;党员 da+;团员有: %d个n,tu);党员有:,da);void show(void)/显示学生信息 if(k=0) return; else文件中总共有%d个学生信息:,k);nn学号tt姓名t性别t年龄t政治面貌t成绩t出生日期t地址n%st%st%st%dt%st%6.2f,stui.num,stui.name,stui.se
5、x,stui.age,stui.zzmm,stui.score); %d%d%dtt%s,stui.data.year,stui.data.mounth,stui.data.day,stui.address);void add(void)/添加学生信息void del(void)/删除学生信息 int i,k,j; FILE *fp;请输入要删除学生的学号或姓名: if(strcmp(db,stui.name)=0|strcmp(db,stui.num)=0) break; if(i=k)找到要删除的学生信息,删除中n if(fp=fopen(学生档案信息.txt,w)=NULL) print
6、f(打开文件失败! exit(0); fprintf(fp,%dn,k-1); for(j=1;jj+) if(j=i) continue; fprintf(fp,%sn%sn%sn%dn%sn%.2fn,stuj.num,stuj.name,stuj.sex,stuj.age,stuj.zzmm,stuj.score);%d/%d/%dn,stuj.data.year,stuj.data.mounth,stuj.data.day);%sn,stuj.address); fclose(fp);OK!未找到对应的学生信息nvoid change(void)/修改学生信息请输入要修改的学生的学号或
7、姓名: if(strcmp(db,stui.num)=0|strcmp(db,stui.name)=0)找到要修改的学生的信息,请重设该学生所有的信息.n,stuMax-1.num); strcpy(stui.num,stuMax-1.num);,stuMax-1.name); strcpy(stui.name,stuMax-1.name);,stuMax-1.sex); strcpy(stui.sex,stuMax-1.sex);stuMax-1.age); stui.age=stuMax-1.age;,stuMax-1.zzmm); strcpy(stui.zzmm,stuMax-1.zz
8、mm);stuMax-1.score); stui.score=stuMax-1.score;出生日期:stuMax-1.data.year,&stuMax-1.data.mounth,&stuMax-1.data.day); stui.data.day=stuMax-1.data.day; stui.data.mounth=stuMax-1.data.mounth; stui.data.year=stuMax-1.data.year;,stuMax-1.address); strcpy(stui.address,stuMax-1.address); baocun(k,stu);void sc
9、h_num(void)/按学号查询学生信息 int i,number; char db15; number=open(stu);n请输入要查询的学号:=number; if(strcmp(db,stui.num)=0)=number) 未找到此学号对应的学生信息nvoid sch_name(void)/按姓名查询学生信息n请输入要查询的姓名: if(strcmp(db,stui.name)=0)未找到此姓名对应的学生信息nint open(struct student stuMax)/打开文件 int number=0,i; if(fp=fopen(r printf( exit(0); if(fscanf(fp,number)=EOF) number=0; for(i=1; fscanf(fp,%s%s%s%d%s%f,stui.num,stui.name,stui.sex,&stui.age,stui.zzmm,& fclose(fp); if(number=0)文件中无数据,请添加.n return number;void baocun(int number , struct student stuMax)/保存文件 fprintf(fp,number);,stui.data.year,stui.data.mounth,stu
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1