C语言学生学籍信息管理系统设计说明_第1页
C语言学生学籍信息管理系统设计说明_第2页
C语言学生学籍信息管理系统设计说明_第3页
C语言学生学籍信息管理系统设计说明_第4页
已阅读5页,还剩16页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

2、int 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 <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();

5、# define MAX 100;struct employechar jobno10;/ 职工号.专业专注.char name20;/ 姓名char sex10;/ 性别int age;/ 年龄char edulevel10;/ 学历char salary10;/ 工资char addr20;/ 地址char tel11;/ 电话;/ 职工信息结构体struct employe a100;int number=0;main()int n;start: printf("tttt欢迎使用职工信息管理系统n");doprintf("ttt1.职工信息输入n"

6、);printf("ttt2.职工信息浏览n");printf("ttt3.职工信息查询n");printf("ttt4.职工信息删除修改n");printf("ttt5.删除文件中的职工信息n");.专业专注.printf("ttt6.保存职工信息n");printf("ttt7.退出 n");printf("ttt选择功能选项 :");fflush(stdin);scanf("%d",&n);switch(n)case1:

7、system("cls"); input(); break;case2: system("cls"); display(); break;case3: system("cls"); find(); break;case4: system("cls"); delmodify(); break;case5: system("cls"); delfile(); break;case6: system("cls"); save(); break;case7: system("

8、;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();printf(" 输入职工性别:&quo

9、t;);fflush(stdin);scanf("%s",ai.sex);printf(" 输入职工年龄:");fflush(stdin);scanf("%d",&ai.age);.专业专注.printf(" 输入职工学历:");fflush(stdin);gets(level);printf(" 输入职工工资:");fflush(stdin);gets(ai.salary);printf(" 输入职工地址:");fflush(stdin);gets(ai

10、.addr);printf(" 输入职工电话:");fflush(stdin);gets(ai.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;doprintf("nn");for(i=0;i<number;i+)printf("

11、tt第 %d 个职工的信息:n",i+1);printf("t职工号 %sn",ai.jobno);printf("t姓名 %sn",);printf("t性别 %sn",ai.sex);printf("t年龄 %dn",ai.age);printf("t学历 %sn",level);printf("t工资 %sn",ai.salary);printf("t地址 %sn",ai.addr);.专业专注.printf(&q

12、uot;t电话 %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");printf("ttt选择查询职工信息的模式n");doprintf("ttt1.通过职工号 n");printf("ttt2.通过职工学历n&q

13、uot;);.专业专注.printf("ttt选择功能选项 :");fflush(stdin);scanf("%d",&m);switch(m)case1 :system("cls");find1(); break;case2 : system("cls"); find2(); break;default :system("cls"); goto start;printf("tt按任意键返回主菜单");fflush(stdin);ch=getchar();while(

14、!ch);system("cls");void find1()int i;.专业专注.char str20,ch;doprintf(" 输入要查询的职工号:");fflush(stdin);gets(str);for(i=0;i<number;i+)if(!strcmp(ai.jobno,str)printf("t职工号 %sn",ai.jobno);printf("t姓名 %sn",);printf("t性别 %sn",ai.sex);printf("t年龄 %d

15、n",ai.age);printf("t学历 %sn",level);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

16、printf(" 输入要查询的职工学历:");gets(str);for(i=0;i<number;i+)if(!strcmp(level,str)printf("t职工号 %sn",ai.jobno);printf("t姓名 %sn",);printf("t性别 %sn",ai.sex);printf("t年龄 %dn",ai.age);printf("t学历 %sn",level);printf("t工资 %sn&qu

17、ot;,ai.salary);printf("t地址 %sn",ai.addr);printf("t电话 %sn",ai.tel);.专业专注.printf("tt按任意键返回查询菜单");fflush(stdin);ch=getchar();while(!ch);system("cls");void delmodify()void del();void modify();char ch;int p;start : printf("ttt职工信息的删除?修改 ? n");doprintf(&qu

18、ot;ttt1.删除 n");printf("ttt2.修改 n");printf(" 选择功能选项:");fflush(stdin);scanf("%d",&p);.专业专注.switch(p)case1 :system("cls");del(); break;case2 : system("cls");modify(); break;default :system("cls"); goto start;printf("tt按任意键返回主菜单 &

19、quot;);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;i<number;i+).专业专注.if(!strcmp(,str)if(i=number) number-=1;elseai=anumber-1;number-=1;break;system("

20、cls");void modify()int i;char str20;printf("ttt2.输入要修改职工的姓名:n");fflush(stdin);scanf("%s",&str);for(i=0;i<number;i+)if(!strcmp(,str).专业专注.system("cls");printf("ttt2.输入新插入职工的信息:n");printf(" 输入职工号:");fflush(stdin);gets(ai.jobno);print

21、f(" 输入职工姓名:");fflush(stdin);gets();printf(" 输入职工性别:");fflush(stdin);scanf("%s",ai.sex);printf(" 输入职工年龄:");fflush(stdin);scanf("%d",&ai.age);printf(" 输入职工学历:");fflush(stdin);gets(level);.专业专注.printf(" 输入职工工资:");fflush(stdin);gets(ai.salary);printf(" 输入职工地址:");fflush(stdin);scanf("%s",ai.addr);printf(" 输入职工电话:");fflush(stdin);gets(ai.tel);printf("nn");break;system("cls");void save ()FILE *fp;.专业专注.in

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论