收藏 分销(赏)

学生学籍信息管理系统设计.doc

上传人:精*** 文档编号:2553409 上传时间:2024-05-31 格式:DOC 页数:13 大小:123.54KB 下载积分:8 金币
下载 相关 举报
学生学籍信息管理系统设计.doc_第1页
第1页 / 共13页
学生学籍信息管理系统设计.doc_第2页
第2页 / 共13页


点击查看更多>>
资源描述
学生学籍信息管理系统设计 ———————————————————————————————— 作者: ———————————————————————————————— 日期: 13 个人收集整理 勿做商业用途 学生学籍信息管理系统设计 1、需求分析 学生基本信息、学生成绩基本信息要存入文件当中,因而要提供文件的输入输出操作;查询功能要求提供查找和显示操作;删除功能要求实现删除操作;排序功能要求实现排序操作;另外还应该提供键盘式选择菜单以实现功能选择。 2、总体设计 整个系统可以设计为数据录入模块、数据查询模块、数据删除模块和数据排序模块。 3、详细设计 设计学生基本信息和学生成绩基本信息结构体数组. Struct { int stuNo; //学号 char name[20]; //姓名 char sex[2]; //性别 int domNum; //宿舍号 int tel; //电话号码 }StuInfo; //学生基本信息结构体 Struct { int stuNo; //学号 char courseNo; //课程编号 char courseName; //课程名称 int creditHour; //学分 Int triGrade; //平时成绩 Int experiGrade; //实验成绩 Int examGrade; //卷面成绩 Float totalGrade; //综合成绩 Float finalCreHour; //实得学分 }StuGraInfo; //学生成绩基本信息结构体 (1)数据录入模块 学生基本信息文件可以在磁盘建立,采用写文件方式录入学生成绩基本信息。综合成绩和实得学分通过计算得到。 (2)查询模块 通过菜单选择查询功能,再选择学生基本情况查询和成绩查询,若选择前者,再通过菜单选择学号、姓名或宿舍号码,按照基本查找算法查找A。TXT,然后把查找结果输出若选择后者,则先在A。TXT中查找学号对应的姓名,再在B.TXT中查找该学生的课程情况,并统计科目和实得总学分,输出结果. (3)删除模块 通过菜单选择删除学生的功能,输入要删除学生的学号,则分别在A.TXT和B.TXT中查找该生信息,删除之;或者输入学生的姓名,先在A。TXT中得到该生的学号,删除该生信息,再在B。TXT中删除该学号对应的信息。注意:C语言中没有直接删除信息的函数,需要自己实现,可以采取读出数据,判断数据(如果不删除,则进入缓冲区,否则删除),写入数据(把缓冲区中的数据写入文件)的步骤进行。 (4)排序模块 通过菜单选择排序依据,采用排序算法(冒泡、插入、选择等)对数据进行排序并输出结果. #include <time.h> #include<stdio。h〉 #include〈conio。h> #include <stdlib。h> #include〈string。h> void input(); void display(); void find(); void delmodify(); void delfile(); void save(); # define MAX 100; struct employe { char jobno[10]; //职工号 char name[20]; //姓名 char sex[10]; //性别 int age; //年龄 char edulevel[10]; //学历 char salary[10]; //工资 char addr[20]; //地址 char tel[11]; //电话 }; //职工信息结构体 struct employe a[100]; int number=0; main() { int n; start: printf(”\t\t\t\t欢迎使用职工信息管理系统\n"); do { printf(”\t\t\t1。职工信息输入\n”); printf("\t\t\t2。职工信息浏览\n"); printf(”\t\t\t3.职工信息查询\n”); printf(”\t\t\t4.职工信息删除修改 \n"); printf("\t\t\t5.删除文件中的职工信息 \n”); printf("\t\t\t6。保存职工信息 \n”); printf(”\t\t\t7.退出\n”); printf(”\t\t\t选择功能选项:"); 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(); break; case 7 : system(”exit”); exit(0); default :system("cls”); goto start; } }while(1); } void input() {int i=0; char j; do {printf("\t\t\t\t录入职工信息 \n输入第 %d 个职工的信息:\n",i+1); printf("输入职工号 :"); fflush(stdin); gets(a[i].jobno); printf("输入职工姓名:”); fflush(stdin); gets(a[i].name); printf(”输入职工性别:"); fflush(stdin); scanf(”%s",a[i]。sex); printf("输入职工年龄:”); fflush(stdin); scanf(”%d",&a[i]。age); printf(”输入职工学历:”); fflush(stdin); gets(a[i]。edulevel); printf("输入职工工资:"); fflush(stdin); gets(a[i].salary); printf("输入职工地址:”); fflush(stdin); gets(a[i].addr); printf(”输入职工电话:"); fflush(stdin); gets(a[i].tel); i++; number=i; printf("是否继续录入?(Y or N):"); fflush(stdin); scanf("%s",&j); } while(j!=’n'&&j!='N’); } void display() {int i=0; char ch; do {printf(”\n\n"); for(i=0;i<number;i++) {printf("\t\t第 %d 个职工的信息:\n”,i+1); printf("\t职工号%s\n”,a[i]。jobno); printf(”\t姓名%s\n",a[i].name); printf("\t性别%s\n”,a[i]。sex); printf(”\t年龄%d\n”,a[i]。age); printf(”\t学历%s\n",a[i].edulevel); printf("\t工资%s\n",a[i]。salary); printf("\t地址%s\n",a[i].addr); printf("\t电话%s\n”,a[i].tel); } printf(”\t\t按任意键返回主菜单"); fflush(stdin); ch=getchar(); } while(!ch); system("cls”); } void find () {void find1(); void find2(); int m; char ch; start :printf("\n\n"); printf(”\t\t\t选择查询职工信息的模式\n"); do {printf(”\t\t\t1。通过职工号\n"); printf("\t\t\t2。通过职工学历\n"); printf(”\t\t\t选择功能选项:”); fflush(stdin); scanf(”%d",&m); switch(m) {case 1 :system(”cls"); find1(); break; case 2 : system("cls"); find2(); break; default :system("cls”); goto start; } printf("\t\t按任意键返回主菜单”); fflush(stdin); ch=getchar(); } while(!ch); system(”cls”); } void find1() {int i; char str[20],ch; do { printf(”输入要查询的职工号:"); fflush(stdin); gets(str); for(i=0;i〈number;i++) if(!strcmp(a[i]。jobno,str)) { printf("\t职工号%s\n",a[i]。jobno); printf(”\t姓名%s\n”,a[i]。name); printf("\t性别%s\n”,a[i].sex); printf(”\t年龄%d\n”,a[i].age); printf("\t学历%s\n”,a[i].edulevel); printf(”\t工资%s\n”,a[i]。salary); printf(”\t地址%s\n”,a[i]。addr); printf("\t电话%s\n",a[i]。tel); } printf("\t\t按任意键返回查询菜单”); fflush(stdin); ch=getchar(); } while(!ch); system("cls"); } void find2() {int i; char str[20],ch; do { printf("输入要查询的职工学历:"); gets(str); for(i=0;i〈number;i++) if(!strcmp(a[i].edulevel,str)) { printf("\t职工号%s\n”,a[i].jobno); printf(”\t姓名%s\n”,a[i].name); printf(”\t性别%s\n",a[i].sex); printf(”\t年龄%d\n",a[i]。age); printf(”\t学历%s\n",a[i].edulevel); printf("\t工资%s\n”,a[i]。salary); printf(”\t地址%s\n",a[i]。addr); printf(”\t电话%s\n”,a[i]。tel); } printf(”\t\t按任意键返回查询菜单"); fflush(stdin); ch=getchar(); } while(!ch); system(”cls"); } void delmodify() {void del(); void modify(); char ch; int p; start : printf(”\t\t\t职工信息的删除?修改?\n"); do {printf("\t\t\t1.删除\n”); printf(”\t\t\t2.修改\n"); printf(”选择功能选项:"); fflush(stdin); scanf(”%d",&p); switch(p) {case 1 :system("cls”); del(); break; case 2 : system(”cls”); modify(); break; default :system(”cls”); goto start; } printf("\t\t按任意键返回主菜单”); fflush(stdin); ch=getchar(); } while(!ch); system("cls"); } void del() {char str[20]; int i; printf("\t\t\t1。输入要删除职工的姓名:\n”); fflush(stdin); scanf("%s",&str); for(i=0;i〈number;i++) { if(!strcmp(a[i].name,str)) { if(i==number) number—=1; else {a[i]=a[number—1]; number-=1; } break; } } system(”cls”); } void modify() {int i; char str[20]; printf("\t\t\t2.输入要修改职工的姓名:\n"); fflush(stdin); scanf("%s”,&str); for(i=0;i〈number;i++) if(!strcmp(a[i].name,str)) {system("cls"); printf(”\t\t\t2.输入新插入职工的信息:\n"); printf(”输入职工号 :”); fflush(stdin); gets(a[i].jobno); printf(”输入职工姓名:"); fflush(stdin); gets(a[i].name); printf(”输入职工性别:"); fflush(stdin); scanf("%s”,a[i].sex); printf("输入职工年龄:"); fflush(stdin); scanf("%d",&a[i]。age); printf(”输入职工学历:”); fflush(stdin); gets(a[i]。edulevel); printf(”输入职工工资:”); fflush(stdin); gets(a[i]。salary); printf(”输入职工地址:”); fflush(stdin); scanf("%s",a[i].addr); printf("输入职工电话:"); fflush(stdin); gets(a[i]。tel); printf(”\n\n”); break; } system(”cls"); } void save () {FILE *fp; int i; char filepath[20]; printf(”输入要保存的文件路径:"); fflush(stdin); gets(filepath); if((fp=fopen(filepath,"w”))==NULL) { printf(”\n保存失败!”); exit(0); } for(i=0;i<number;i++) fprintf(fp,"%s%s%s%d%s%d%s%s”,a[i]。jobno,a[i].name,a[i]。sex,a[i]。age,a[i].edulevel,a[i].salary,a[i].addr,a[i]。tel); fclose(fp); printf("职工信息已保存在%s中!\n",filepath); fclose(fp); printf("职工信息已保存在%s中!\n",filepath); system("pause"); system("cls"); } void delfile() {FILE *fp; char filepath[20]; printf("输入要删除的文件路径:"); fflush(stdin); gets(filepath); fp=fopen(filepath,”w"); fclose(fp); printf(”保存在文件%s中的所有信息已经删除!\n”,filepath); system(”pause"); system(”cls”); }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服