




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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 Visual C+ 6.0运行
5、环境图 1Visual C 6.0 运行环境2 概要设置2.1总体设计思想( 1) 学生信息管理系统的功能为显示主要操作页面,通过密码验证登陆界面,档案信息处理功能。通过密码验证登陆,可实现安全登录,方便可靠。学生信息处理功能包括输入学生信息, 显示学生的档案信息, 学生档案信息条件查询 (分为:按学生姓名进行查询,按学生学号进行查询) ,更新学生档案信息。( 2) 学生信息管理系统的功能模块有:系统登陆界面,美观大方,按enter 键进入密码验证登陆界面,输入正确密码登陆主菜单选择框架界面,方便用户对程序个功能进行选择,选择要实现的功能按enter 键进入该功能。1. 输入学生档案信息。2.
6、 显示学生的档案信息3. 学生档案信息条件查询4. 更新学生档案信息。0. 退出,谢谢使用 !程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。2.2总体设计流程图图 2总体设计流程图该流程图为此次学生信息查询系统的总体流程图,用户进入界面以后可以看到登陆密码界面,密码输入正确进入主菜单选择框架界面,1 为输入学生信息档案,2 为显示学生档案,3 为学生信息档案查询,4 为更新学生档案, 0 为退出系统。用户可以根据自己的需求方便快捷的做出自己的选择。3 系统详细设计3.1头文件的引用和函数的声明#includestdio.();*3.学生档案信息条件查询函数声名*void ge
7、ngxinxinxi();*4.更新学生信息函数声名 *该函数是对头文件的加载和引用,定义结构体、常量和变量,并对他们进行初始化工作。3.2系统主调函数* 主调函数 -*主函数 *void main()printf(n);printf(n);printf(n);printf( -大家好 - n);printf(n);printf(n);printf(n);printf(n);printf(n);printf(老师您好!printf(n);printf(n);printf(n);printf(n);printf(n);printf(- 【学生档案信息管理系统】printf(n);system(p
8、ause);system(cls);fflush(stdin);n);- -n);password();*密码登陆验证函数调用 *recordplatform();* 系统标题函数调用 *xuanzekuangjia();*选择框架函数调用 *该函数为程序的主函数,主要实现了对整个程序的运行控制,以及相关功能模块的调用。3.3密码验证函数* 通过对比字符串数组比较实现密码校验*void password()int s,g=0;char str120=123456 ;char str220;doprintf(*n);printf(n);printf(请 输 入 密 码 : n);printf(n
9、);printf(*n);gets(str2);* while()if(str1g=str2g)s=1;elses=0;break;g+;*if(!strcmp(str1,str2)* 比较输入的密码 str1 和设定的密码 str2,输出“密码正确”。*printf( 密码输入正确 n);s=1;elses=0;printf( 密码输入错误,请从新输入n);while(s=0);密码登陆函数流程图:该函数为密码登陆函数模块,当输入的密码不正确的时候,系统会提示“密码输入错误,请重新输入” ,直到输入正确密码为止。3.4选择框架函数* 程序名称 *void recordplatform()pr
10、intf(n);printf(n);printf(n);printf(|*学生档案信息管理系统*|n);printf(n);printf( n);printf(n);* 选择框架 -*void xuanzekuangjia()int j,k;char w;printf(n);printf( 欢迎使用学生档案信息管理系统n);printf(n);printf(1.输入学生档案信息n);printf(printf(n);2.显示学生的档案信息n);printf(printf(n);3.学生档案信息条件查询n);printf(n);printf(4.更新学生档案信息n);printf(n);prin
11、tf(0.退出,谢谢使用!n);printf(n);Sleep(500); *printf( 请选择你要进行的工作:n);do* 输入不能空,也不能是字母,当输入字母的时候,会提示 不能为字母,请重新输入”。 *scanf(%d,&j); k=1;while(w=getchar()!=n)k=0;if(k=0)printf( 不能为字母,请重新输入n);elsebreak;while(k=0);switch(j)* 运用 switch 语句根据需要进行菜单选择*case 1: system(cls);shuruxinxi();system(cls); system(pause); system
12、(cls); xuanzekuangjia();break;输入学生档案信息函数调用case 2: system(cls);xianshixinxi();system(pause);system(cls);xuanzekuangjia();break;显示档案管理系统选择框架函数调用case 3: system(cls);tiaojianchaxun();system(pause);system(cls);xuanzekuangjia();break; * 学生档案信息条件查询函数调用 *case 4: system(cls);gengxinxinxi();system(pause);syst
13、em(cls);xuanzekuangjia();break; * 更新学生档案信息函数调用*case 0: system(cls);tuichuxitong();break; *退出程序函数调用 *选择框架函数流程图:进入学生档案管理系统时显示程序名称和选择框架主菜单,提示用户进行选择,完成相应任务。此代码被main()函数调用。3.5输入学生信息函数* 输入学生档案信息 -*调用函数输入学生信息void shuruxinxi()int k;char ans,w;ans=y;doprintf(请输入第%d个学生的信息:n,m+1);do* 学号的输入 *printf(请输入学生的学号num:
14、);scanf(%d,&stum.num); 结构体doscanf(%d,&stum.num);* 输入数据 *k=1;while(w=getchar()!=n)k=0;if(k=0)printf( 不能为字母,请重新输入n);elsebreak;while(k=0);if(stum.num 1000 | stum.num 1000 | stum.num | stum.tel | stum.tel 0);do*年龄的输入*printf(请输入学生的年龄:);doscanf(%d,&stum.age);k=1;while(w=getchar()!=n)k=0;if(k=0)printf( 不能为
15、字母,请重新输入n);elsebreak;while(k=0);if(stum.age 100 | stum.age 100 | stum.age 0);*系别班级的输入*printf( 请输入学生的系别班级 :);scanf(%s,stum.xibiebanji);m+;printf(n 是否继续添加学生信息 ?是就输入 y 或 Y,不是就输入另外任意字符 :n);scanf(%s,&ans);while( ans = y|ans = Y);输入信息函数流程图:输入学生信息函数模块, 用户可以根据提示的信息来进行每一步的输入操作,当输入不当时,系统会自动提示,并让用户进行正确的操作。在此系统
16、中,要求用户输入的只有字符型和数值型数据,设计了相应的函数来进行数据校验工作,保证数据输入的准确性。3.6显示学生信息函数* 显示学生的档案信息 void xianshixinxi() -*telstruct record *p;printf( 以下就是显示的学生成绩信息:printf(numxibiebanjin);n);namesexagefor(p=stu;pnum);printf(%14s,p-xibiebanji);printf(%10s,p-name);printf(%12c,p-sex);printf(%7d,p-age);printf(%17fn,p-tel); 显示信息流程图
17、:当用户进入查询信息模块时,系统会显示内部存储的内容。3.7学生信息条件查询函数*- 学生档案信息条件查询 *void tiaojianchaxun()int i,j,k;struct record *p=NULL;char Name30;printf( 请输入 1 或 0 两个数字,输入 1 进行学号查询,输入0 进行姓名查询 );scanf(%d,&k);doif(k!=1&k!=0)printf( 请重新输入: );scanf(%d,&k);while(k!=1&k!=0);if(k=1)do* 按学生学号进行查询 *printf( 请输入学号进行查询 (11000)号 :-);scan
18、f(%d,&i);for(j=0;jm;j+)if(stuj.num=i)for(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(s
19、trcmp(,Name)=0)字符串函数for(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(strcmp(,Name)!=0)printf( 对不起您输入的学生姓名不存在。);while(strcmp(,Name)!=0);查询信息流程图:当用户执行此查询任务时,系统会提醒用户进行查询字段的选择,即按学号或姓名进行查询。若此学生档案信息记录
20、存在,则会显示该省的档案信息。此函数完成了节点定位的功能。3.8更新学生信息函数* 更新学生档案信息 *void gengxinxinxi()int i,j,k;struct record *p=0;printf( 请 输 入 要 更 改 的 学 生 的 学 号 (110) 号 :-);* 输入并校验该生信息 *scanf(%d,&i);dofor(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
21、);printf(%17fn,p-tel);break;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
22、,&stuj.num,&stuj.xibiebanji,&,&stuj.age,&stuj.tel);break;if(stuj.num!=stuk.num)printf(修改信息成功。);* 提示修改信息成功 *while(stuj.num=stuk.num);printf( 以下是你更改后的学生的新信息: n); for(p=stu;pnum);printf(%14s,p-xibiebanji);printf(%10s,p-name);printf(%7d,p-age);printf(%17fn,p-tel);更新信息流程图:在更新学生档案信息的操作中,系统会先按输入的学
23、号查询到该生档案信息记录,然后按顺序填入要修改的学生信息。3.9退出学生信息系统函数* 退出学生档案信息管理系统调用函数-*void tuichuxitong()printf(【学生档案信息管理系统】n);printf(n);printf(n);printf(printf(老师再见! n); Bye-Bye n);printf(n);printf( n);printf(n);printf(n);printf( n);printf(n);printf( n);printf(山电n);printf(东信n);printf(交0n);printf(通6n);printf(学1n);printf(院班
24、n);printf(n);printf(n);printf(再见n);4 程序调试4.1学生信息管理系统初始界面当进入学生档案管理系统时, 其系统初始界面如图图4 11 所示。按任意键进入密码验证校验面。图 41学生档案管理系统初始界面图4.2密码登陆界面输入预先设定好的密码再按Enter 进入系统。如果输入不正确,则显示“密码输入错误,请重新入” 。图 42密码登陆界面图4.3登陆主菜单选择框架界面进入主菜单选择框架界面后,用户可选择操作。当输入为 0 时,退出学生档案管理系统 。04, 调用相应功能进行图 43登陆主菜单选择框架界面图4.4输入信息模块当用户输入 1 并按 Enter 键后
25、,即可进入数据输入界面。其数据输入过程如图所示图 441 所示,这里输入了一条学生的档案信息。图 4 4输入信息模块图4.5显示信息模块当用户执行了输入记录后, 退处输入信息模块后, 输入 2 并按 Enter键,查看当前单链表中学生档案信息,如图451 所示,此时表中有 1 条记录。图 45显示信息模块图4.6条件查询模块当用户输入 3 并按 Enter 键后,即可进入条件查询界面。校验输入错误信息,可按学号或姓名进行信息查询。图 461条件查询模块登陆界面图图 462条件查询模块按学号进行查询界面图图 4 6 3条件查询模块按姓名进行查询界面图4.7更新信息模块当用户输入 4 并按 Enter 键后,即
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年城市运行数据面试模拟题及答案
- 2025年程序员面试宝典与预测题
- 邮政内审面试题目及答案
- 2025年房地产经纪人面试预测题与成功案例
- 2025年客房服务员中级笔试模拟测试题
- 2025年工会干事笔试高频题集解析
- 税收学原理考试题型及答案
- 2025年医疗安全知识题库及答案解析
- 2025年城市新区规划调整与基础设施安全风险评估
- 2025年初级收纳师考试题
- 2024关于进一步提升基层应急管理能力的意见学习解读课件
- 《植物细胞》教学课件
- 《PLC应用技术(西门子S7-1200)第二版》全套教学课件
- 医学教材 肠内营养相关性腹泻的预防处置课件
- 新人教版七年级上册英语全册课件(2024年新版教材)
- 2024-2030年中国纳米烧结银市场深度调查与发展战略规划分析研究报告
- WS 329-2024 麻醉记录单标准
- 不交养老保险劳务合同范本
- JT-T-1223-2018落水人员主动报警定位终端技术要求
- 初中语文现代文阅读训练及答案二十篇
- 2024封窗高空作业免责协议书范本
评论
0/150
提交评论