c语言按专业查找学籍信息,C语言学生学籍信息管理系统设计0001

《C语言学生学籍信息管理系统设计0001》由会员分享,可在线阅读,更多相关《C语言学生学籍信息管理系统设计0001(9页珍藏版)》请在人人文库网上搜索。

1、精品文档学生学籍信息管理系统设计1、需求分析 学生基本信息、学生成绩基本信息要存入文件当中,因而要提供文件的输入输出操作; 查询功能要求提供查找和显示操作;删除功能要求实现删除操作;排序功能要求实现排序操 作;另外还应该提供键盘式选择菜单以实现功能选择。2、总体设计 整个系统可以设计为数据录入模块、数据查询模块、数据删除模块和数据排序模块。3、详细设计 设计学生基本信息和学生成绩基本信息结构体数组。Structint stuNo; /学号char name20; /姓名char sex2; /性别int domNum; /宿舍号int tel; /电话号码StuInfo; /学生基本信息结构体。

2、Structint stuNo; /学号char courseNo; /课程编号char courseName;/课程名称int creditHour; /学分Int triGrade; /平时成绩Int experiGrade; /实验成绩Int examGrade; /卷面成绩Float totalGrade; /综合成绩Float finalCreHour; / 实得学分StuGraInfo; / 学生成绩基本信息结构体(1)数据录入模块学生基本信息文件可以在磁盘建立,采用写文件方式录入学生成绩基本信息。综合成绩 和实得学分通过计算得到。(2)查询模块 通过菜单选择查询功能,再选择学生基。

3、本情况查询和成绩查询,若选择前者,再通过菜单选择学号、姓名或宿舍号码,按照基本查找算法查找A.TXT,然后把查找结果输出若选择后者,则先在 A.TXT中查找学号对应的姓名,再在 B.TXT中查找该学生的课程情况,并统计 科目和实得总学分,输出结果。(3)删除模块通过菜单选择删除学生的功能,输入要删除学生的学号,则分别在A.TXT 和 B.TXT 中查找该生信息,删除之;或者输入学生的姓名,先在A.TXT中得到该生的学号,删除该生信息, 再在B.TXT中删除该学号对应的信息。注意:C语言中没有直接删除信息的函数,需要自己实现, 可以采取读出数据, 判断数据 (如果不删除, 则进入缓冲区, 否则删。

4、除),写入数据 (把 缓冲区中的数据写入文件)的步骤进行。(4)排序模块 通过菜单选择排序依据,采用排序算法(冒泡、插入、选择等)对数据进行排序并输出 结果。#include #include #include #include #include void input();void display();void find();void delmodify();void delfile();void save();# define MAX 100;struct employechar jobno10;/职工号char name20;/姓名char sex10;/性别int age; /年龄cha。

5、r edulevel10; /学历char salary10;/工资char addr20;/地址char tel11; /电话; / 职工信息结构体 struct employe a100; int number=0; main() int n;start: printf(tttt 欢迎使用职工信息管理系统 n); doprintf(ttt1.职工信息输入n);printf(ttt2.职工信息浏览n);printf(ttt3.职工信息查询n);printf(ttt4.职工信息删除修改 n); printf(ttt5. 删除文件中的职工信息 n);printf(ttt6.保存职工信息 n);p。

6、rintf(ttt7.退出 n);printf(ttt 选择功能选项 :);fflush(stdin);scanf(%d,&n); switch(n)case 1 : system(cls); input(); break;case 2 : system(cls); display(); break;case 3 : system(cls); find(); break;case 4 : system(cls); delmodify(); break;case 5 : system(cls); delfile(); break;case 6 : system(cls); save(); bre。

7、ak;case 7 : system(exit); exit(0);default :system(cls); goto start;while(1);void input()int i=0;char j;doprintf(tttt 录入职工信息 n 输入第 %d 个职工的信息 :n,i+1); printf( 输入职工号 :);fflush(stdin);gets(ai.jobno);printf( 输入职工姓名 :);fflush(stdin);gets(ai.name);printf( 输入职工性别 :); fflush(stdin);scanf(%s,ai.sex);printf( 输。

8、入职工年龄 :); fflush(stdin);scanf(%d,&ai.age);printf( 输入职工学历 :); fflush(stdin);gets(ai.edulevel);printf( 输入职工工资 :); fflush(stdin);gets(ai.salary);printf( 输入职工地址 :); fflush(stdin);gets(ai.addr);printf( 输入职工电话 :); fflush(stdin); gets(ai.tel);i+;number=i;printf( 是否继续录入 ?(Y or N):); fflush(stdin);scanf(%s,&。

9、j);while(j!=n&j!=N);void display() int i=0;char ch;doprintf(nn);for(i=0;inumber;i+)printf(tt 第 %d 个职工的信息 :n,i+1); printf(t 职工号 %sn,ai.jobno); printf(t姓名 %sn,ai.name);printf(t性别 %sn,ai.sex);printf(t年龄 %dn,ai.age);printf(t学历 %sn,ai.edulevel);printf(t工资 %sn,ai.salary);printf(t地址 %sn,ai.addr);printf(t电话。

10、 %sn,ai.tel);printf(tt 按任意键返回主菜单 ); fflush(stdin);ch=getchar();while(!ch); system(cls);void find ()void find1();void find2();int m;char ch;start :printf(nn);n);printf(ttt 选择查询职工信息的模式 doprintf(ttt1. 通过职工号 n); printf(ttt2.通过职工学历 n);printf(ttt 选择功能选项 :); fflush(stdin);scanf(%d,&m);switch(m)case 1 :syst。

11、em(cls); find1(); break; case 2 : system(cls); find2(); break;default :system(cls); goto start;printf(tt 按任意键返回主菜单 ); fflush(stdin);ch=getchar();while(!ch); system(cls);void find1()int i;char str20,ch;doprintf( 输入要查询的职工号 :); fflush(stdin);gets(str);for(i=0;inumber;i+) if(!strcmp(ai.jobno,str)printf(。

12、t 职工号 %sn,ai.jobno); printf(t姓名 %sn,ai.name);printf(t性别 %sn,ai.sex);printf(t年龄 %dn,ai.age);printf(t学历 %sn,ai.edulevel);printf(t工资 %sn,ai.salary);printf(t地址 %sn,ai.addr);printf(t电话 %sn,ai.tel);printf(tt 按任意键返回查询菜单 ); fflush(stdin);ch=getchar();while(!ch);system(cls);void find2()int i;char str20,ch;do。

13、printf( 输入要查询的职工学历 :); gets(str);for(i=0;inumber;i+) if(!strcmp(ai.edulevel,str)printf(t 职工号 %sn,ai.jobno); printf(t姓名 %sn,ai.name);printf(t性别 %sn,ai.sex);printf(t年龄 %dn,ai.age);printf(t学历 %sn,ai.edulevel);printf(t工资 %sn,ai.salary);printf(t地址 %sn,ai.addr);printf(t电话 %sn,ai.tel);printf(tt 按任意键返回查询菜单 。

14、); fflush(stdin);ch=getchar();while(!ch); system(cls);void delmodify() void del();void modify();char ch;职工信息的删除?修改?删除 n);修改 n);n);int p;start : printf(ttt do printf(ttt1. printf(ttt2.printf( 选择功能选项 :);fflush(stdin);scanf(%d,&p);switch(p)case 1 :system(cls); del(); break; case 2 : system(cls); modify。

15、(); break; default :system(cls); goto start;printf(tt 按任意键返回主菜单 ); fflush(stdin);ch=getchar();while(!ch);system(cls);void del()char str20;int i;printf(ttt1. 输入要删除职工的姓名: n);fflush(stdin);scanf(%s,&str);for(i=0;inumber;i+)if(!strcmp(ai.name,str)if(i=number) number-=1;elseai=anumber-1; number-=1;break;。

16、 system(cls);void modify()int i;char str20;n);n);printf(ttt2. 输入要修改职工的姓名: fflush(stdin);scanf(%s,&str); for(i=0;inumber;i+) if(!strcmp(ai.name,str) system(cls);printf(ttt2. 输入新插入职工的信息: printf( 输入职工号 :);fflush(stdin);gets(ai.jobno);printf( 输入职工姓名 :); fflush(stdin);gets(ai.name);printf( 输入职工性别 :); ffl。

17、ush(stdin);scanf(%s,ai.sex);printf( 输入职工年龄 :); fflush(stdin);scanf(%d,&ai.age);printf( 输入职工学历 :); fflush(stdin);gets(ai.edulevel);printf( 输入职工工资 :); fflush(stdin); gets(ai.salary);printf( 输入职工地址 :); fflush(stdin); scanf(%s,ai.addr);printf( 输入职工电话 :); fflush(stdin);gets(ai.tel);printf(nn);break; syst。

18、em(cls);void save ()FILE *fp;int i;char filepath20;printf( 输入要保存的文件路径: );fflush(stdin);gets(filepath);if(fp=fopen(filepath,w)=NULL)printf(n 保存失败 !);exit(0);for(i=0;inumber;i+)fprintf(fp,%s%s%s%d%s%d%s%s,ai.jobno,ai.name,ai.sex,ai.age,ai.edulev el,ai.salary,ai.addr,ai.tel);fclose(fp);printf(职工信息已保存在$中!n,filepath);fclose(fp);printf(职工信息已保存在$中!n,filepath);system(pause);system(cls);void delfile()FILE *fp;char filepath20;printf( 输入要删除的文件路径: ); fflush(stdin);gets(filepath);fp=fopen(filepath,w);!n,filepath);fclose(fp);printf(”保存在文件$中的所有信息已经删除system(pause);system(cls);9 欢。迎下载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值