学生信息管理系统课程设计论文_第1页
学生信息管理系统课程设计论文_第2页
学生信息管理系统课程设计论文_第3页
学生信息管理系统课程设计论文_第4页
学生信息管理系统课程设计论文_第5页
免费预览已结束,剩余20页可下载查看

下载本文档

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

文档简介

1、随着计算机技术的发展, 可视编程技术占有了越来越重要的作用。 Visual C+6.0 是 一种功能强大行之有效的可视化编程工具。因此此软件是在 Visual C+6.0 环境下编写 的。对于我们,随着学习的深入,已经大体掌握了 Visual C+6.0 环境下的程序开发。 为了将我们的编程能力提升到一个更高的水平, 深化面向对象的编程思维和解决问题的 能力,值此课程设计周期间,进行基于 Visual C+6.0 环境的软件开发,先以字符统计 软件作为开始,对 Visual C+6.0 环境和面向对象程序设计进行回忆和熟悉,使得在此 基础上的下一个员工培训系统软件的开发进行的更加顺利。本文档详

2、细叙述了基于 Visual C+6.0 环境下的学生信息查询软件的设计过程以及 程序源代码。本文档从概要设计,详细设计,参考源程序代码以及显示程序运行的截屏等方面详 尽的介绍了软件开发过程。此次学生信息查询软件的开发目的是使我们用面向对象的方式来思考和解决问题 的能力,并且可以掌握字符数组的使用、 字符指针的使用、 类的设计和使用以及 C 语言 语法。本文档的安排如下:第一章 主要介绍了对面向对象 C语言的主要特征Visual C+6.0编程环境以及该 系统的各项功能。第二章 主要的介绍说明了学生信息查询系统软件的编程思想和系统的总体流程 图以及对该流程图的详细介绍。第三章 主要介绍学生信息查

3、询系统软件的详细设计, 各个分模块的单独流程图以 及对设计和流程图的一些介绍。第四章 主要介绍了软件软件进行调试,运行程序并截图,显示运行界面和结果。第五章 是该论文作者对这次课程设计过程中的一些感受和体会等。1 系统概述 该系统的功能是以菜单方式工作,输入密码验证正确进入菜单选择界面,用户通过 选择数字来选择学生信息录入功能 -输入学生基本信息, 学生信息浏览功能 -输出学生 的基本信息,查询、排序功能 -算法,按学号查询,按姓名查询。学生信息的删除与修 改(可选项)的等基本的功能,从而实现用户的想法。在各项基本功能之下我们可以看 到各种小的模块来满足用户的各种需求,达到快速方便的效果。程序

4、在设计的过程中遇到的问题已及时更正,但由于编者的能力和水平有限,学生 信息查询系统和文档中不免会出现一些不期待的错误,望文档读者能够理解和体谅,并 欢迎提醒和纠正,在此表示感谢以及敬意。1.1 C 语言的主要特点(1)C 语言简洁、紧凑,使用方便、灵活。(2)预算符丰富。(3)数据类型丰富,具有现代语言的各种数据结构。(4)具有结构化的控制语句。(5)语法限制不太严格,程序设计自由度大。(6)C 语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能可 以直接对硬件进行操作。(7)生成目标代码质量高,程序执行效率高。(8)用 C 语言编写的程序可移植性好(与汇编语言相比)1.2 V

5、isual C+ 6.0 运行环境图1 Visual C 6.0运行环境2概要设置2.1 总体设计思想(1)学生信息管理系统的功能为显示主要操作页面,通过密码验证登陆界面,档案信 息处理功能。通过密码验证登陆,可实现安全登录,方便可靠。学生信息处理功能包括输入学生 信息,显示学生的档案信息,学生档案信息条件查询(分为:按学生姓名进行查询,按 学生学号进行查询),更新学生档案信息。(2)学生信息管理系统的功能模块有:系统登陆界面,美观大方,按 enter键进入密码验证登陆界面,输入正确密码登陆 主菜单选择框架界面,方便用户对程序个功能进行选择,选择要实现的功能按en ter键进入该功能。1. 输

6、入学生档案信息。2. 显示学生的档案信息3. 学生档案信息条件查询4. 更新学生档案信息。0.退出,谢谢使用!程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。2.2总体设计流程图图2 总体设计流程图该流程图为此次学生信息查询系统的总体流程图,用户进入界面以后可以看到登陆密码界面,密码输入正确进入主菜单选择框架界面,1为输入学生信息档案,2为显示学生档案,3为学生信息档案查询,4为更新学生档案,0为退出系统。用户可以根据自 己的需求方便快捷的做出自己的选择。3 系统详细设计3.1 头文件的引用和函数的声明#include/* 标准输入输出函数库 */ #include /* 字符

7、串函数库 */ #include /*/#include static int m=0;struct record/*学生信息结构体*/ int num; char name30; char sex; float tel; int age; char xibiebanji80;stu500;void password();void recordplatform();/* 系统标题函数声名 */void xuanzekuangjia();/*选择框架函数声名 */void tuichuxitong();/*0. 退出学生档案信息系统函数声名 */ void shuruxinxi();/*1. 输

8、入学生档案信息函数声名 */ void xianshixinxi();/*2. 显示档案信息函数声名 */ void tiaojianchaxun();/*3. 学生档案信息条件查询函数声名 */ void gengxinxinxi();/*4. 更新学生信息函数声名 */该函数是对头文件的加载和引用,定义结构体、常量和变量,并对他们进行初始化工 作。3.2 系统主调函数/* 主调函数 */*主函数*/ void main()printf(n);printf(n);n);printf(n);printf( 大家好printf(n);printf(n);printf(n);printf(n);p

9、rintf(n);printf( 老师您好! n);printf(n);printf(n);printf(n);printf(n);printf(n);printf( -【学生档案信息管理系统】 -n);printf(n);system(pause); system(cls); fflush(stdin);password。;/*密码登陆验证函数调用*/ recordplatform();/* 系统标题函数调用 */ xuanzekuangjia();/*选择框架函数调用*/ 该函数为程序的主函数,主要实现了对整个程序的运行控制,以及相关功能模块的 调用。3.3 密码验证函数/*通过对比字符串

10、数组比较实现密码校验 */ void password()int s,g=0;char str120=123456 ;char str220;doprintf( *n);printf(n);printf(” 请输入密码: n);printf(n);printf( *n);gets(str2);/* while() if(str1g=str2g)s=1;elses=0;break;g+;*/if(!strcmp(str1,str2)的密码str2,printf(密码输入正确n);s=1;/*比较输入的密码strl和设定输出“密码正确”。*/elses=0;printf(密码输入错误,请从新输入n

11、); while(s=O);该函数为密码登陆函数模块,当输入的密码不正确的时候,系统会提示“密码输入错 误,请重新输入”,直到输入正确密码为止。3.4 选择框架函数/*void recordplatform()prin tf(n);prin tf(n);printf(printf(n);printf( 程序名称*/n);*|n);|*学生档案信息管理系统printf(” n);printf(n);/*选择框架*/int j,k; char w; printf( printf( n);printf( printf( n);printf( n);printf( n);printf( n);prin

12、tf( n);printf( printf( n);printf( printf( n);printf(/*输入不能空,也不能是字时候,会提示 不能为字母,void xuanzekuangjia()厂nn);I欢迎使用学生档案信息管理系统丨卜Tn);I1.输入学生档案信息I卜TI2.显示学生的档案信息I卜T3. 学生档案信息条件查询 Tn);4. 更新学生档案信息 Tn);0. 退出,谢谢使用 !Ln);Sleep(500); /*/printf( 请选择你要进行的工作 :n); do母,当输入字母的请重新输入 ”。 */scanf(%d,&j); k=1; while(w=getchar()

13、!=n) k=0;if(k=0)printf( 不能为字母,请重新输入 n); elsebreak;while(k=0);switch(j)/*运用switch语句根据需要进行菜单选择*/case 1: system(cls);shurux in xi();system(cls); system(pause); system(cls);xuan zekua ngjia();break;/输入学生档案信息函数调用case 2: system(cls);xia nshixi nxi();system(pause);system(cls);xuan zekua ngjia();break显示档案管理

14、系统选择框架函数调用case 3: system(cls);tiaojia nchax un();system(pause);system(cls);xuan zekua ngjia();break; /*学生档案信息条件查询函数调用 */case 4: system(cls);gengxinxin xi();system(pause);system(cls);xuanzekuangjia();break; /*更新学生档案信息函数调用*/case 0: system(cls);tuichuxitong();break; /* 退出程序函数调用 */选择框架函数流程图:进入学生档案管理系统时显

15、示程序名称和选择框架主菜单,提示用户进行选择,完 成相应任务。此代码被 main ()函数调用。3.5 输入学生信息函数/*输入学生档案信息*/调用函数输入学生信息void shurux in xi()int k;char ans,w;ans=y;doprintf( 请输入第 %d 个学生的信息: n,m+1);doprintf( 请输入学生的学号 num:);/scanf(%d,&stum.num);/ 结构体doscanf(%d,&stum.num);k=1;while(w=getchar()!=n)k=0;if(k=0)printf( 不能为字母,请重新输入 n);elsebreak;w

16、hile(k=0);if(stum.num 1000 | stum.num 1000 | stum.num 160000000000| stum.tel16000000000 | stum.tel 0);do/* 年龄的输入 */printf( 请输入学生的年龄 :); do scanf(%d,&stum.age);k=1; while(w=getchar()!=n) k=0;if(k=0)printf( 不能为字母,请重新输入 n);elsebreak;while(k=0); if(stum.age 100 | stum.age 100 | stum.age 0);/*系别班级的输 入 */

17、printf( 请输入学生的系别班级 :); scanf(%s,stum.xibiebanji);m+;printf(n是否继续添加学生信息?是就输入y或丫,不是就输入另外任意字符:n); scanf(%s,&ans);while( ans = y|a ns = Y);输入信息函数流程图:输入学生信息函数模块,用户可以根据提示的信息来进行每一步的输入操作,当 输入不当时,系统会自动提示,并让用户进行正确的操作。在此系统中,要求用户输入 的只有字符型和数值型数据,设计了相应的函数来进行数据校验工作,保证数据输入的 准确性。3.6 显示学生信息函数/*显示学生的档案信息*/void xia nsh

18、ixi nxi()struct record *p;printf(”以下就是显示的学生成绩信息:n);prin tf( numxibiebanjin amesex age tel n);for(p=stu;p nu m);prin tf(%14s,p-xibiebanji);prin tf(%10s,p- name);prin tf(%12c,p-sex);prin tf(%7d,p-age);prin tf(%17fn,p-tel); 显示信息流程图:/*指针指向的内容为系统存储的学查询结果中看到系统的存储内容*/*/0进行姓名查询);/*按学生学号进当用户进入查询信息模块时,系统会显示内部

19、存储的内容。3.7 学生信息条件查询函数/*学生档案信息条件查询void tiaojia nchax un()int i,j,k;struct record *p=NULL;char Name30;printf(请输入1或0两个数字,输入1进行学号查询,输入sca nf(%d,&k);doif(k!=1 &k!=0)printf(请重新输入:); sca nf(%d,&k);while(k!=1 &k!=0);if(k=1)do行查询*/printf(请输入学号进行查询(11000)号:-); sca nf(%d,&i);for(j=0;jm;j+)if(stuj. num=i)namesex

20、/*按学生姓名进namesexfor(p=stu;pnum); printf(%14s,p-xibiebanji); printf(%10s,p-name); printf(%12c,p-sex); printf(%7d,p-age); printf(%17fn,p-tel);break;if(stuj.num!=i)printf( 您输入的学号不存在 - :);while(stuj.num!=i);if(k=0)行查询 */doprintf( 请输入你所要查询的学生的姓名 :);scanf(%s,Name);for(j=0;jm;j+)if(strcmp(stuj. name,Name)=O

21、) 字符串函数for(p=stu;pnum);printf(%14s,p-xibiebanji);printf(%1Os,p-name);printf(%12c,p-sex);printf(%7d,p-age);printf(%17fn,p-tel);break;if(strcmp(stuj. name,Name)!=O) printf(对不起您输入的学生姓名不存在。);while(strcmp(stuj. name,Name)!=O);查询信息流程图:当用户执行此查询任务时,系统会提醒用户进行查询字段的选择,即按学号或姓名 进行查询。若此学生档案信息记录存在,则会显示该省的档案信息。此函数完

22、成了节点 定位的功能。3.8 更新学生信息函数/*更新学生档案信息*/void gengxinxin xi() int i,j,k; struct record *p=0;printf(请输入要更改的学生的学号(110)号:-);/*输入并校验该生信息*/sca nf(%d,&i);do for(j=0;jm;j+) if(stuj. num=i) printf(以下是你要更改的信息:n);for(p=stu;pnum);printf(%14s,p-xibiebanji);printf(%10s,p-name);printf(%7d,p-age);printf(%17fn,p-tel);bre

23、ak;if(stuj.num!=i)printf( 该学号不存在,请重新输入: );scanf(%d,&i);while(stuj.num!=i);printf( 请输入更改后学生的新信息: n);scanf(%d%s%s%d%f,&stuj.num,&stuj.xibiebanji,&,&stuj.age,&stuj.tel);dofor(k=0;km;k+)if(j=k)k=k+1;if(stuj.num=stuk.num)printf( 对不起您输入更改后学生的新信息错误,请重新输入: n);scanf(%d%s%s%d%f,&stuj.num,&stuj.xibieb

24、anji,&,&stuj.age,&stuj.tel);break;if(stuj.num!=stuk.num)printf( 修改信息成功。 );/* 提示修改信息成功 */while(stuj.num=stuk.num);printf( 以下是你更改后的学生的新信息: n);for(p=stu;pnum);prin tf(%14s,p-xibiebanji);prin tf(%10s,p- name);prin tf(%7d,p-age);prin tf(%17fn,p-tel);在更新学生档案信息的操作中,系统会先按输入的学号查询到该生档案信息记录, 然后按顺序填入要修

25、改的学生信息。3.9 退出学生信息系统函数/*退出学生档案信息管理系统调用函数 */void tuichuxit on g()printf(学生档案信息管理系统n);prin tf(n);prin tf(n);printf(老师再见! n);printf(Bye-Bye n);prin tf(n);printf(” n);prin tf(n);printf(n);printf(n);prin tf(n);printf(n);printf(山 电n);prin tf(东信n);printf( printf( printf( printf( printf( printf( printf( 交 0通

26、 6学1院班再见 n);n);n);n);n);n);n);4 程序调试4.1学生信息管理系统初始界面4 1 1所示。按任意键进0图4 1学生档案管理系统初始界面图当进入学生档案管理系统时,其系统初始界面如图图 入密码验证校验面4.2密码登陆界面输入预先设定好的密码再按 Enter进入系统。如果输入不正确,则显示“密码输 入错误,请重新入”。图44输入信息模块图图4 2密码登陆界面图4.3登陆主菜单选择框架界面进入主菜单选择框架界面后,用户可选择04,调用相应功能进行操作。当输入为0时,退出学生档案管理系统。U:IWCIIiKilT3 UD SUTTIflCSXAliB丄 1S7KATQKWM

27、X# VDLuuviuuUBiitt,vh*竺吧i宰估定.国建系统 y Wft用半主怡峯怕,3円里*纸*St ” SL示巫玉倒档玉石息、h-k-m-h 3 .半土档军佶皇辛戶査i旬 一二宙話乎玉祸奈石五 已匡直一亟査世;話诜铎滋帘希讦石褐:图4- 3登陆主菜单选择框架界面图4.4输入信息模块当用户输入1并按Enter键后,即可进入数据输入界面。其数据输入过程如图所 示图4 41所示,这里输入了一条学生的档案信息。3iH = Lk-nu&i4.5 显示信息模块当用户执行了输入记录后,退处输入信息模块后,输入2并按Enter键,查看当前单链表中学生档案信息,如图 4 5 1所示,此时表中有1条记录。图4 5显示信息模块图4.6条件查询模块当用户输入3并按Enter键后,即可进入条件查询界面。校验输入错误信息,可 按学号或姓名进行信息查询。图4 6 1条件查询模块登陆界面图图4 - 6 2条件查询模块按学号进行查询界面图i *C:DX:UIEETS 4BD SETTIBCSADIDIISTRATOR面、蛊Dubysuitzgingl. ewu粧三 1 ,学Ji師 N-的如t 数滇eh= 亍査Lbi 和所均-n 1UTS-W-a 1世行宇琴查w.ne

温馨提示

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

评论

0/150

提交评论