学生信息管理系统设计论文_第1页
学生信息管理系统设计论文_第2页
学生信息管理系统设计论文_第3页
学生信息管理系统设计论文_第4页
学生信息管理系统设计论文_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

题目:7学生信息管理系统设计 一课程设计目的(1) 加深对结构体数据类型设计的理解,能对系统功能进行分析,并设计合理的模块化结构。(2) 学会设计数据结构。其中包括对结构数组、数据文件等知识的运用。(3) 提高程序开发功能,能运用合理的控制流程编写清晰高效的程序。(4) 训练C程序调试能力,能将一个中小型各级组织系统联调通过。(5) 开发一个中小型系统,掌握系统研发全过程。(6) 培养分析问题、解决实际问题的能力。 二实验内容 学生信息管理系统,是学校储存学生的相关基本信息,具有学籍管理、成绩登陆、人数统计以及信息查询等方面的功能。现要求设计并实现一个简单的学生信息管理系统,要求具有学生详细信息(学号、姓名、性别、籍贯等)、信息排序(按学号、班级等)、成绩输入、成绩排名、人数统计等基本功能。(一) 其功能主要有:1、对班级的管理,其中包括班级信息的添加、删除和修改等相关操作,还要求进行显示相关信息。2、学生信息管理 学生信息管理包括对学生档案的管理。该模块可实现以下功能:添加、修改、查询和显示学生的基本信息。3、成绩信息管理 成绩信息管理包括对成绩录入和成绩分析的管理。该模块可实现以下功能:录入学生成绩,显示学生成绩。 (二)功能模块图 该系统主要包括二个模块基础信息模块,学生管理信息模块和成绩管理信息模块。学生管理信息模块主要是对学生的信息添加、查询和修改。成绩管理信息模块主要是对学生课程成绩的存档,便于日后老师对不同学生的学习进行分析,提高学生的学习能力 1、根据上述的功能,可以设计出系统的学生信息模块列名数据类型长度备注学号char10主键姓名char10无性别char2无班级varchar50无籍贯varchar50无年龄smallint2无家庭住址char50无政治身份smalldatetime4无2、 根据上述的功能,可以设计出系统的学生成绩模块模块名称功能描述输入信息对学生的基本信息进行录入查阅信息1. 输入学生姓名;2. 输入学生学号;统计人数1.按性别、出生年月、籍贯统计人数;2.按班级统计人数;3.按政治面貌统计人数。成绩录入1. 录入学生C语言、VB、英语3门课程的成绩;2. 录入信息删除、修改;程序代码为:#include /*I/o函数*/#include /*其他说明*/#include /*字符串函数*/#define LEN 10 /*学号和姓名最大学生人数*/#define N 20 /*最大学生人数*/struct record /*声明函数体*/ char code20; /*学号*/ char name10; /*姓名*/ char sex5; /*性别*/ char time20; /*出生年月日*/ char add20; /*家庭地址*/ char age20; /*年龄*/ char sta20; /*政治面貌*/ char grade20; /*各科目成绩*/stuN;int k=1,m,n;void shuru();void chaxun();void xiugai();void shanchu();void xianshi();void baocun();void caidan();void tuichuxitong(); void huanyingyemian(); int main() while(k) huanyingyemian(); system(pause); system(cls); printf(请按任意键进入主菜单!n); system(cls); caidan(); system(pause); return 0; void help() system(COLOR 2f); printf(n 尊敬的用户您好!); printf(n =n); printf(| |); printf(n | 1.欢迎进入帮助系统! |n); printf(| |); printf(n | |n); printf(| |); printf(n | 2.请按照菜单提示进入数字代号! |n); printf(| |); printf(n | 4.谢谢您的使用! |n); printf(| |); printf(n =n);void shuru() /* 实现录入学生基本信息功能 */ int i,flag=1; while(flag) flag=0; printf(请输入需要创建信息的学生人数(1-20):n); scanf(%d,&n); if(n20) flag=1; printf(输入错误,检查后请重新输入!n); for(i=0;in;i+) printf(请输入第%d个学生的基本信息:n,i+1); printf(请输入学号:n); scanf(%s,stui.code); printf(请输入姓名:n); scanf(%s,); getchar(); printf(请输入性别(男,女):n); scanf(%s,stui.sex); printf(请输入出生年月(输入格式:年.月.日):n); scanf(%s,stui.time); printf(请输入家庭地址:n); scanf(%s,stui.add); printf(请输入年龄:n); scanf(%s,stui.age); printf(请输入政治面貌(党员、团员、群众):n); scanf(%s,stui.sta);printf(请输入各科目成绩(输入格式:C语言.VB.英语):n); scanf(%s,stui.grade); printf(录入完毕!n); baocun();void baocun() /*保存学生信息到文件的函数*/ int i; FILE *fp; if(fp=fopen(student.txt,wb)=NULL) /*创建文件并判断是否能够打开成功*/ printf(文件不能打开!n); exit(0); /*如果不能打开文件,则关闭当前所有的文件*/ for(i=0;in;i+) /*将内存中的学生信息写入到磁盘文件中*/ if(fwrite(&stui,sizeof(struct record),1,fp)!=1) printf(文件输入错误!n); fclose(fp); /*关闭文件*/void chazhao() int i,t,flag; char s130; system(COLOR 5f); printf(n =n); printf( | 1.按学号查询 |n); printf( | 2.按姓名查询 |n); printf( | 3.退出本菜单 |n); printf( =n);while(1) flag=0; printf( 请输入子菜单编号: ); scanf(%d,&t); switch(t) case 1: printf( 请输入要查询的学生的学号: n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.code,s1)=0) flag=1; printf(学生学号 学生姓名 性别 出生年月 家庭地址 年龄 政治面貌 各科成绩 n); printf(=n); printf(%6s%7s%5s%9s%8s%10s%14s%9sn, stui.code,,stui.sex,stui.time,stui.add,stui.age,stui.sta,stui.grade); if(flag=0) printf(该学号不存在! n);break;case 2: printf( 请输入要查询的学生的姓名: n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(,s1)=0) flag=1; printf(学生学号 学生姓名 性别 出生年月 家庭地址 年龄 政治面貌 各科成绩 n); printf(=n); printf(%6s%7s%5s%9s%8s%10s%14s%9sn, stui.code,,stui.sex,stui.time,stui.add,stui.age,stui.sta,stui.grade); if(flag=0) printf(该姓名不存在!n);break;case 3: return; default: printf(请在1-3之间选择n); void xiugai() int i,t,num; char sex13,s130,s230; printf( 请输入要查询的学生的学号:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.code,s1)=0) num=i; system(COLOR 4f); printf( =n); printf( | 1.修改姓名 |n); printf( | 2.修改性别 |n); printf( | 3.修改出生年月日 |n); printf( | 4.修改地址 |n); printf( | 5.修改年龄 |n); printf( | 6.修改政治面貌 |n); printf( | 7.修改各科目成绩 |n); printf( | 8.修改退出本菜单 |n); printf( =n); while(1) printf(请输入子菜单的编号:); scanf(%d,&t); switch(t) case 1: printf(请输入新的姓名:n); scanf(%s,s2); strcpy(,s2);break; case 2: printf(请输入新的性别:n); scanf(%s,sex1); strcpy(stunum.sex,sex1);break; case 3: printf(请输入新的出生年月日: n); scanf(%s,s2); strcpy(stunum.time,s2);break; case 4: printf(请输入新的地址: n); scanf(%s,s2); strcpy(stunum.add,s2);break; case 5: printf(请输入新的年龄: n); scanf(%s,s2); strcpy(stunum.age,s2);break; case 6: printf(请输入新的政治面貌: n); scanf(%s,s2); strcpy(stunum.sta,s2);break; case 7: printf(请输入新的各科目成绩: n); scanf(%s,s2); strcpy(stunum.grade,s2);break; case 8: return; default: printf(请在1-8之间选择n); void paixu() int i,j,*p,*q,s; char temp10; for(i=0;ii;j-) if(strcmp(stuj-1.code,stuj.code)0) strcpy(temp,stuj-1.code); strcpy(stuj-1.code,stuj.code); strcpy(stuj.code,temp); strcpy(temp,); strcpy(,); strcpy(,temp); strcpy(temp,stuj-1.sex); strcpy(stuj-1.sex,stuj.sex); strcpy(stuj.sex,temp); strcpy(temp,stuj-1.time); strcpy(stuj-1.time,stuj.time); strcpy(stuj.time,temp); strcpy(temp,stuj-1.add); strcpy(stuj-1.add,stuj.add); strcpy(stuj.add,temp); strcpy(temp,stuj-1.age); strcpy(stuj-1.age,stuj.age); strcpy(stuj.age,temp); strcpy(temp,stuj-1.sta); strcpy(stuj-1.sta,stuj.sta); strcpy(stuj.sta,temp); strcpy(temp,stuj-1.grade); strcpy(stuj-1.grade,stuj.grade); strcpy(stuj.grade,temp);/ p=&stuj-1; / q=&stuj; /s=*p; / *p=*q; / *q=s; void shanchu() int i,j,flag=0; char s115; printf(请输入将要删除的学生的学号:n); scanf(%s,s1); for(i=1;in;i+) if(strcmp(stui.code,s1)=0) flag=1; for(j=i;jn-1;j+) stuj=stuj+1; if(flag=0)printf(该学号不存在!n);if(flag=1) printf(删除成功!显示结果请按6!n); n-;void xianshi() int i; FILE *fp; if(fp=fopen(student.txt,rb)=NULL) printf(打开文件时错误!请按任意键退出!); system(pause); exit(0); printf( 所有学生的信息为:n n); printf(学生学号 学生姓名 性别 出生年月 家庭地址 年龄 政治面貌 各科成绩 n); printf(=n); for(i=0;in;i+) fread(&stui,sizeof(struct record),1,fp); printf(%6s%7s%5s%9s%8s%10s%14s%9sn, stui.code,,stui.sex,stui.time,stui.add,stui.age,stui.sta,stui.grade);void tuichuxitong() system(COLOR 3f);printf( -n);printf(n);printf(n);void huanyingyemian() system(COLOR 6f); printf(n); printf(n); printf(n); printf(n); printf(n); printf(n); printf(n); printf(n); printf( 尊敬的用户:您好!n); printf(n); printf(n); printf( 欢迎使用n); printf(n); printf(n); printf( -n);printf(n);void caidan() int num; system(COLOR 1f); printf(nn 学生个人信息管理系统nn); printf(=n); printf(n); printf( =系统功能菜单=n); printf( =友情提醒:查询前请刷新统!=n); printf( =n); printf( |=|n); printf( | 0.系统帮助说明 1.输入学生信息 |n); printf( |-|n); printf( | 2.查询学生信息 3.修改学生信息 |n); printf( |-|n); printf( | 4.按学号删信息 5.学生人数统计 |n); printf( |-|n); printf( | 6.显示当前信息 7.保存当前信息 |n); printf( |-|n); printf( | 8.退出系统 |n); printf( |=|n); printf( =n

温馨提示

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

评论

0/150

提交评论