课程设计:学生信息管理系统的设计与实现_第1页
课程设计:学生信息管理系统的设计与实现_第2页
课程设计:学生信息管理系统的设计与实现_第3页
课程设计:学生信息管理系统的设计与实现_第4页
课程设计:学生信息管理系统的设计与实现_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

德州学院计算系课程设计报告 实习名称 自主学习能力 设计题目 学生信息管理系统的设计与实现 实习时间 2015.3.16-2015.3.22 专业班级 14计科(高职)本 指导老师 教学单位(盖章) 小组分工情况: 学号 姓名 分工 201481010032 代码编写 201481010039 文档编写 201481010034 文档编写 二一五 年 四 月 三十 日目 录1.实习目的12 需求分析12.1 系统描述12.2 功能需求12.3总体功能设计23总流程图及模块流程图33.1总流程图33.2各模块流程图43.2.1 删除模块43.2.2查询模块54各模块的功能及调试64.1主界面64.2添加模块64.3删除模块74.4查询模块74.5修改模块84.6浏览模块84.7排序模块95总结9参考文献11附录:12i德州学院 信息管理学院 2014级 计算机科学与技术(高职)专业 自主学习能力 学生信息管理系统的设计与实现1.实习目的一直以来学生的成绩管理是学校工作中的一项重要内容,我国的大中专院校的学生信息管理水平普遍不高。随着办学规模的扩大和招生人数的增加,建立一个信息维护系统是非常必要的。在当今信息时代这种传统的管理方法必然被以计算机为基础的信息管理系统所代替。为了提高信息管理的效率,因此我们选择了学生信息管理系统作为自主学习的课题。(1) 开发一个学生信息管理系统,进一步提高了办学效益和现代化水平。为广大教师和学生提高工作效率,实现学生信息管理工作流程的系统化、规范化和自动化。(2) 节省大量人力,可以迅速查到所需信息、高效、安全,学生也能方便的查看自己的信息。2 需求分析2.1 系统描述随着教育水平的不断提高,随着人类社会的发展,人类对知识的需求也不断增长。受教育人群的数量越来越多,繁多的学生信息也需要系统的管理。学生信息管理系统在生活中运用十分广泛,因此需要编写程序对学生信息进行管理。所需要的学生信息包括:学号、姓名、性别、联系方式、出生年月、家庭住址、邮箱。基本要求包括:对学生信息进行录入、删除、查询、修改、浏览、排序。2.2 功能需求根据上述的信息管理系统的业务流程、要求以及所要实现的目标,我们可以拟出以下需求目标:建立学生档案的管理和维护。实现计算机自动化管理体制。2.3总体功能设计学生信息管理系统存放了每个学生的学号、姓名、性别、出生年月日、住址、电话、E-mail等信息的数据库。每个人的信息定义在一个结构体变量中。其结构如下:系统通过显示程序、添加程序、查询程序、删除程序、修改程序、排序程序来实现学生信息管理系统的显示功能、查询功能、删除功能、修改功能、排序功能。各个功能的调用通过主函数中的switch语句来实现。总体菜单图如图1所示。图1 总体模块框图3总流程图及模块流程图3.1总流程图总流程如图2所示。图2 总流程图3.2各模块流程图 3.2.1 删除模块 模块程序如图3所示。图3 删除模块3.2.2查询模块 查询模块如图4所示。图4 查询流程图4各模块的功能及调试4.1主界面图5主界面4.2添加模块通过该模块,当要加入新的学生的信息的时候,来实现新学生信息的加入。效果图如图6所示。图6添加模块4.3删除模块通过该模块,当输入一个学生的学号或者姓名的时候,可以通过这个模块,将输入学号或者姓名的学生的所有信息从数据库中删除出去。以后,这个学生的信息将不再会出现再数据库中。效果图如图7所示。图7删除模块4.4查询模块 通过该模块,这个模块可以按学生的学号、姓名来查询学生所有的信息,并显示学生的所有信息,以便查询者阅读。效果图如图8所示。图8查询模块4.5修改模块通过该模块,当某个人的信息发生变化的时候,可以通过修改模块来进行修改。修改模块时一具有多级子菜单的摸块。使用十分的方便、灵活。效果图如图9所示。图9修改模块4.6浏览模块通过该模块,可以浏览学生全部的信息。效果图如图10所示。图10浏览模块4.7排序模块 通过该模块,来实现数据库中的数据按学号排列,使浏览者一目了然。效果图如图11所示。图11排序模块5总结在科学技术不断进步,计算机技术逐渐渗入社会生活各个层面的今天,信息管理的高效化必将得到不断的完善和广泛的应用,有着美好前景。我们将以此为契机,竭尽全力,不断学习新知识,研究和掌握新技术,开发出功能更加完善、更加高效、通用性更强的学生信息管理系统。此次C语言课程设计,在指导教师的精心教导下我学会了如何用C语言编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,拟出具体的设计方案,然后系统分析与系统设计,最后是代码设计与调试。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。我编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我在编程,就必须不断改进,才能更好提高编程能力。参考文献1 谢延红,王付山.C语言程序设计教程M.北京:国防工业出版社,2010.152-171.2 赵秉新.C语言程序设计中基本运算时应注意的问题J. 科技信息(科学教研). 2007(26).3 语言程序设计教程M,北京:国防工业出版社,2011.7.4陈澄. 学生信息管理系统的设计与实现J. 中国管理信息化,2014,07:42-43.5肖荣辉. 学生信息管理系统的分析与设计J. 三明高等专科学校学报,2002,04:93-96.6杨路明.C语言程序设计(第二版)M.北京:北京邮电大学出版社,2005.7杨文君,杨柳.C语言程序设计教程M.北京:清华大学出版社,2010.8 周启海.C语言程序设计教程M.北京:机械工业出版社,2004.附录:#include#include#include#include#includevoid save();void read();void caidan();void tuichu();void jk4();void jk5();/定义全局变量static int Z = 0; /定义结构体struct stulong num;char name10;char sex2;char born10;long tel;char home20;char email30;student100; /-添加学生信息-void jk1()int j,num,i,k;long tel;char sex2,born10,email30;if (Z=100)printf(ttt开户人数已到达最大上限n);printf(ttt按任意键退出n);getch();caidan();/return;printf(请输入您的姓名:);scanf(%s,studentZ.name);printf(请输入学号(十二位数字):);scanf(%d,&num); if(num=1000000000000)printf(格式错误!n);printf(按任意键返回n);getch();jk1();return; for(j=0;j0&tel=99999999999)studentZ.tel=tel;else printf(格式错误,请重新输入n);getch();jk1();return;printf(请输入学生的出生年月(格式为*-*-*):);scanf(%s,born); for(i=0;i=0&born0=0&born1=0&born2=0&born3=0&born5=0&born6=0&born8=0&born9=9)strcpy(studentZ.born,born);else printf(格式错误,请重新输入n);getch();jk1();return;printf(请输入学生的住址:);scanf(%s,&studentZ.home);printf(请输入学生的e-mail:);scanf(%s,email);for(k=0;k30;k+)if(emailk=)strcpy(studentZ.email,email);printf(信息录入成功n); studentZ.num=num;strcpy(studentZ.sex,sex);Z+;printf(按任意键返回主菜单n);getch();caidan();return; printf(格式错误,请重新输入n);getch();caidan();return;/-删除学生信息-void jk2()int i,j,m; char name110;int num1;if(Z=0)printf(数据库没有任何信息,请先存入。);else printf(如按学号删除请按1,按姓名删除请按2n); scanf(%d,&m); if(m=1) printf(请输入学号n); scanf(%d,&num1); for(i=0;iZ;i+) if(num1=studenti.num) for(j=i;jZ;j+) studentj=studentj+1; Z-;printf(删除成功!); else printf(请输入姓名n); scanf(%s,name1); for(i=0;iZ;i+) if(strcmp(name1,)=0) for(j=i;jZ;j+) studentj=studentj+1; Z-; printf(删除成功!); else printf(ttt姓名不存在n); printf(ttt按任意键返回n);getch();jk2(); return; printf(ttt按任意键返回主菜单n);getch();caidan();return;/-查询学生信息-void jk3() int i,item; int s1; char s230; printf(-n); printf(-1.按学号查询-n); printf(-2.按姓名查询-n); printf(-3.返回主菜单-n); printf(-n); printf(请选择子菜单编号); scanf(%d,&item); switch(item) case 1: printf(请输入要查询的学号:n); scanf(%d,&s1); for(i=0;i100;i+) if(studenti.num=s1) printf(学号 %dn,studenti.num);printf(姓名 %sn,);printf(性别 %sn,studenti.sex);printf(电话 %dn,studenti.tel);printf(住址 %sn,studenti.home);printf(出生年月 %sn,studenti.born);printf(e-mail %sn,studenti.email); printf(ttt按任意键返回主菜单n);getch();caidan(); if(studenti.num!=s1) printf(没有该学号 n); ;break; case 2: printf(请输入要查询的姓名:n); scanf(%s,s2); for(i=0;i100;i+) if(strcmp(,s2)=0) printf(学号 %dn,studenti.num);printf(姓名 %sn,);printf(性别 %sn,studenti.sex);printf(电话 %dn,studenti.tel);printf(住址 %sn,studenti.home);printf(出生年月 %sn,studenti.born);printf(e-mail %sn,studenti.email); printf(ttt按任意键返回主菜单n);getch();caidan();return; if(strcmp(,s2)!=0) printf(没有该学号 n); ;break; case 3:caidan(); default:printf(请在0-3之间选择n); printf(ttt按任意键返回主菜单n);getch();caidan();return;/- 修改学生信息-void jk4()char a20;int b;int i,m,n;if(Z=0)printf(没有存储中的学生信息,请先输入。n); elseprintf(请您输入要修改的学生学号:); scanf(%d,&b);for(i=0;iZ;i+) if(b=studenti.num) printf(1.修改姓名n); printf(2.修改性别n); printf(3.修改出生年月n); printf(4.修改住址n); printf(5.修改电话n); printf(6.修改e-mailn); printf(7.返回n); n=i; while(1) printf(请选择修改的编号:); scanf(%d,&m); switch(m) case 1: printf(请输入新的姓名:n); scanf(%s,a); strcpy(,a); break; case 2: printf(请输入新的性别:n); scanf(%s,a); strcpy(studentn.sex,a); break; case 3: printf(请输入新的出生年月:n); scanf(%s,a); strcpy(studentn.born,a); break; case 4: printf(请输入新的住址:n); scanf(%s,a); strcpy(studentn.home,a); break; case 5: printf(请输入新的电话:n); scanf(%d,b);studentn.tel=b; break; case 6: printf(请输入新的e-mail:n); scanf(%s,a); strcpy(studentn.email,a); break; case 7:caidan(); default:printf(请在1-8之间选择n); printf(ttt按任意键返回主菜单n);getch();caidan();return;/-浏览学生信息-void jk5()if(Z=0)printf(没有存储中的学生信息n);elseint i;for(i=0;iZ;i+)printf(学号 %dn,studenti.num);printf(姓名 %sn,);printf(性别 %sn,studenti.sex);printf(电话 %dn,studenti.tel);printf(住址 %sn,studenti.home);printf(出生年月 %sn,studenti.born);printf(e-mail %sn,studenti.email);printf(-n);printf(ttt按任意键返回主菜单n);getch();caidan();return;/-学生信息排序-void jh(int a,int b)/交换函数struct stu temp;temp.num=studenta.num;strcpy(,);strcpy(temp.sex,studenta.sex);strcpy(temp.born,studenta.born);strcpy(temp.email,studenta.email);strcpy(temp.home,studenta.home);temp.tel=studenta.tel;studenta.num=studentb.num;strcpy(,);strcpy(studenta.sex,studentb.sex);strcpy(studenta.born,studentb.born);studenta.tel=studentb.tel;strcpy(studenta.email,studentb.email);strcpy(studenta.home,studentb.home);studentb.num=temp.num;strcpy(,);strcpy(studentb.born,temp.born);strcpy(studentb.sex,temp.sex);studentb.tel=temp.tel;strcpy(studentb.email,temp.email);strcpy(studentb.home,temp.home);void jk6()if(Z=0)printf(数据库中没有学生信息。n);elseint i,j;for(i=0;iZ-1;i+)for(j=i+1;jZ;j+)if(studenti.num=studentj.num)jh(i,j);for(i=0;iZ;i+)printf(学号 %dn,studenti.num);printf(姓名 %sn,);printf(性别 %sn,studenti.sex);printf(电话 %dn,studenti.tel);printf(住址 %sn,studenti.home);printf(出生年月 %sn,studenti.born);printf(e-mail %sn,studenti.email);printf(ttt按任意键返回主菜单n);getch();caidan();return;/-主函数-void main() caidan();read();void caidan()int n; system(cls); printf(#n); printf(*欢迎来到学生信息管理系统*n); printf(n); printf( *t1添加学生资料ttttt2删除学生资料 *n); printf( n); printf( *t3查询学生资料ttttt4修改学生资料 *n); print

温馨提示

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

评论

0/150

提交评论