资源描述
计算机科学与技术学院
《软件工程》课程设计报告
(2023/ 2023 学年 第 1 学期)
学生姓名: 黄世强
学生专业: 计算机科学与技术
学生班级: 计算机102023
学生学号:
指导教师: 张继福
2023年1月17日
目 录
1 问题的定义 1
2可行性研究 2
2.1 技术可行性 2
2.2 经济可行性 2
2.3 操作可行性 2
3 项目开发计划 3
3.1 项目背景 3
3.2 项目目的 3
3.3 项目功能 4
4 需求分析 5
4.1 业务流程图 5
4.2 性能规定 5
4.3 数据流图 5
4.4 数据字典 7
5 概要设计 10
5.1 系统功能模块图 10
5.2 模块功能说明 10
6 数据库设计 12
6.1 外部接口与用户界面 12
6.2 内部接口 12
6.3 E-R图 12
6.4 数据结构设计 13
7 具体设计 15
7.1 系统程序流程图 15
7.2 界面设计 22
8 测试报告 23
8.1 测试系统模块 23
8.2测试摘要 25
8.3 局限性之处 25
9 用户手册 26
9.1编写目的 26
9.2背景 26
9.3运营环境 26
附录 27
1 问题的定义
随着互联网的发展,运用INTERNET 技术来实现“无纸办公”这个概念已经进一步人心,校园网作为学校信息化建设的一个平台在完毕资源共享、互联网访问、教务管理、电子备课等方面发挥了重要作用。服务教学、提高教学水平和效果是校园网建设的核心目的和核心价值,本系统立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高高校的现代化管理水平,实现信息资源的共享。该项目重要是服务于教学方面,进一步方便教师的工作和学生的学习,从而从侧面达成提高学校的教学方面‘软件’质量。可以说它合用于每一所高校,因此很有开发价值。我们不敢说该产品是所有该系列产品中最佳的,但是我们这里要强调的是它具有使用范围广,实用性强,使用简朴,所花经费少等优点。我们可以肯定的说它将在高校的使用过程中其优点将得到最充足的体现。重要功能有三方面:管理员,登陆,进入系统,可以进行管理员操作。进行学生信息、教师信息、课程信息的编辑、查询、删除、修改、添加、打印等操作。学生,登陆,进入系统,可以进行查询、修改、打印等操作。教师,登陆,进入系统,可以进行查询、学生成绩录入、修改、打印等操作。
软件系统目的为一下几点:本系统具有很强的可靠行,可以对录入的学生信息进行效验,对数据进行修改、删除,规定各种权限。本系统中的模块具有很强的可续性,可以方便管理人员的修改与维护。本系统操作方便、灵活、简朴。本系统可高效、快速的查询到学生的基本信息。
2可行性研究
2.1 技术可行性
该系统将大大改善数据解决的速度,并且更加方便的对数据进行管理,同时可以大大减少人力资源的浪费以及工作的支出。此外还可以提高查询的效率,减少查询的错误率,修改数据方便等。由于本来的系统是人工操作,所以效率比较低,相对于以前的系统,本小组开发的学生管理系统在效率上会更高,花费最短的时间解决更多数据。
2.2 经济可行性
校园内部局域网络已经建成;每个人电脑均已配置;硬件投入不需要很大,此外,学校对系统的开发大力支持。因此经济上是可行的。
2.3 操作可行性
为了对学生成绩的管理方便,开发人员完毕了全面的调查与分析,同时与目的用户进行了多次进一步沟通,重要用于大中专院校学生平常管理工作,以规范的学生档案为基础,实现了学生考勤,学籍变更、学生奖惩、考试成绩、教师考勤等电算化管理,实现学校人力资源的优化和学生成绩管理的科学管理而设计的,通过试用本系统,可以更加有效的管理学生成绩信息,其中涉及学生的基本信息,成绩信息并且具有信息的增长,查询,修改等功能,所以通过研究与探讨,该软件操作是可行的。
3 项目开发计划
3.1 项目背景
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能认为人们深刻结识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩管理信息进行管理,具有手工管理所无法比拟的有点。例如,检索迅速、查找方便、可靠性高、存储量高、保密性好、寿命长、成本低等。这些有点可以极大地提高学生档案管理的效率,也是公司科学化、正规化管理,与世界接轨的重要条件。因此,开发大学成绩管理系统很有必要。
学生成绩管理系统是一个学校不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应当为用户提供充足的信息和快捷的查询手段。同时,学生成绩管理是各大学的重要平常管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,特别是学分制、选课制的展开和进一步,学生成绩平常管理工作及保存管理日趋繁重、复杂。高校都迫切需要研制开发一款属于自己的功能强大,操作简朴,具有人性化的学生成绩管理系统。
3.2 项目目的
在我国,各大中小学校的各类信息管理系统并非一个新的课题,但也有的学校主线就没有信息任何管理系统,所有的工作几乎还是手工操作来完毕。计算机技术在日新月异的发展,信息化是社会进程的必然趋势,学校管理只有只有快,准,精才干发挥其价值。本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完毕的。为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目的:系统应具有实用性、可靠性和合用性,同时注意到先进性。对各个数据库进行动态管理,防止混乱。可以按照用户选择的不同的条件进行简朴查询和复合查询。可以对查询结果进行分类汇总。注意数据的安全性,具有数据备份和恢复的功能。方便用户的操作,尽量减少用户的操作。
3.3 项目功能
登录管理:为了保证系统的安全性,可以根据不同的用户权限来提供不同的服务。分为管理员登录和用户(教师、学生)登录两个子模块。账户管理:分为用户管理和修改密码两个子模块。其中用户管理子模块又包含了添加用户、修改用户和删除用户两部分。信息查询:在各基本表的基础上进行信息查询。分为学生资料查询和学生成绩查询两个子模块。
4 需求分析
4.1 业务流程图
通过对现有的资源以及软件分析,并多次与学生、老师、管理员等进行沟通后、将整个成绩查询业务流程抽象描述如下图4.1所示。
教师
成绩信息数据库
学生
登陆查询 登录
成绩表 查询信息
登录 信息管理
管理员
图4.1 学生成绩管理业务流程图
4.2 性能规定
为了满足用户的规定,系统必须要有高的运作速度,用户填写的信息输入到系统,系统必须能快速及时作出响应,迅速解决各项数据、信息,显示出所有必需信息,所以规定很高的信息量速度和大的主存容量;由于要存贮大量的数据和信息,也还要有足够大的磁盘容量;安全性也是系统最重要的性能需求之一,学生信息管理系统必须有可靠的安全措施,以保证用户的各项信息安全。
4.3 数据流图
该数据流图重要体现出了学生信息的录入以及教师将考核信息存入数据库,最终交给管理员。学生也可以通过软件从数据库查询自己的成绩信息以及个人信息。总体说明了系统管理员、学生、教师之间拥有的权利以及可以进行的一些操作。数据流图见下图4.2和4.3。
图4.2 顶层数据流图
图4.3 一层数据流图
4.4 数据字典
4.4.1 数据流
数据流里面涉及了录入信息、成绩写入数据库、查询结果以及成绩表等几方面。具体信息如下表4-1、4-2、4-3、4-4。
表4-1 录入信息的数据字典
数据流编号:1
数据流名:录入信息
简述:用于写入学生各课成绩
数据流来源:密码检查
数据流去向:成绩登记
数据流项组成:录入信息=学生学号+学生姓名+性别+班级各课成绩
表4-2 成绩写入的数据字典
数据流编号:2
数据流名:成绩写入记录库
说明:用于学生成绩写入
数据流来源:成绩登记
数据流去向:成绩写入记录
数据流项组成:成绩写入记录=各课成绩
数据流编号:3
数据流名:查询结果
说明:用于显示学生查询的信息结果
数据流来源:学生信息查询
数据流去向:学生
数据流组成:查询信息=学生信息+各课成绩
数据流编号:4
数据流名称:成绩表
简述:学生成绩告知,在下学期前发给学生
数据流来源:成绩管理
数据流去向:学生
数据项组成:学号+学生姓名+课程名+成绩
数据流量:1张/学期
表4-3 查询结果的数据字典
表4-4 成绩表的数据字典
4.4.2 数据存储
数据存储里面重要涉及了五张表。具体信息见表4-5、4-6、4-7、4-8、4-9。
表4-5 学生表数据字典
数据存储编号:001
数据存储名称:学生表
简述:登记学生信息
数据存储组成:学号+姓名+性别+班级+专业+系部
相关联的解决:成绩管理,课程管理
表4-6 管理员表数据字典
数据存储编号:002
数据存储名称:管理员表
简述:增长、修改、查询学生学籍
数据存储组成:学号+身份证号+高考号+姓名+性别+家庭住址+ 系部班级
相关联的解决:学籍管理,成绩管理,课程管理
表4-7 教师表数据字典
数据存储编号:003
数据存储名称:教师表
简述:教师上课安排
数据存储组成:教师姓名+所教课程+上课班级
相关联的解决:课程管理
数据存储编号:004
数据存储名称:学生选课表
简述:学生选课课程信息存储
数据存储组成:姓名 +系部班级+课程名称+课程编号+学号
相关联的解决:课程管理,成绩管理
表4-8 学生选课表数据字典
表4-9 学生成绩表数据字典
数据存储编号:005
数据存储名称:学生成绩表
简述:存放学生各科考试成绩
数据存储组成:姓名 +学号+系部班级+课程名称+课程编号
相关联的解决:课程管理,成绩管理
4.4.3 解决
解决重要分为身份验证和查询登记。具体信息见表4-10和4-11。
表4-10 身份验证数据字典
解决逻辑编号:01
解决逻辑名称:身份验证
简述:检查输入信息的合法性
输入的数据流:学号+密码
解决过程:根据输入的学号和密码,检索用户,拟定用户类别,以拟定该用户的权限,显示查询信息
输出的数据流:学生选课信息,学生成绩,学生学籍,密码修改
解决频率:频繁
表4-11 查询等级数据字典
解决逻辑编号:02
解决逻辑名称:查询登记
简述:查询专业表及课程表,成绩表
输入的数据流:教师名+教师号+密码
解决过程:根据输入的信息,拟定用户类别,根据用户类别,显示查询信息
输出的数据流:学生成绩,班级表,课程表
解决频率:频繁
5 概要设计
5.1 系统功能模块图
根据前面的需求分析以及对软件的开发也许性学生成绩管理系统功能模块图一共分为学生子模块、教师子模块、管理员子模块等基本模块。且在学生子模块下面又涉及了学生选课以及成绩查询模块;教师子模块下面涉及了教师选课模块;管理员子模块涉及了信息维护模块。成绩管理系统功能模块图如下图5.1所示。
图5.1学生成绩管理系统功能模块图
5.2 模块功能说明
1.在学生子模块中,学生可以在该模块中进行选课、退课,成绩查询,并且还可以对自己的个人信息进行增删查改等操作。
2. 在教师子模块中,教师可以在该模块中进行选课、退课,成绩录入,并且还可以对自己的个人信息进行增删查改等操作。
3.在管理员子模块中,管理员可以在此模块中维护本软件的远行,并且还可以对自己的个人信息进行增删查改等操作,还可以对教师学生的信息进行增删查改的操作。
4. 在学生选课模块中,学生可以登录后在数据库中选择自己所需要选择的课程进行提交、修改、选择等操作。
5. 在学生成绩查询模块中,学生可以登录自己的信息后,查询自己所需要的科目成绩,当然可以进行选择后查询自己各个学期的或者一学年的成绩。
6. 在教师选课模块中,教师可以在数据库中选择自己所要专家的课程以及班级。在这里教师可以查到课程的有关信息。
7. 在管理员修改信息模块中,管理员可以管理学生以及教师的一些基本信息。涉及修改、查询、删除等操作。
6 数据库设计
6.1 外部接口与用户界面
在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。在界面设计上,应做到简朴明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及犯错信息。外观上也要做到合理化,考虑到用户多对WINDOW 风格较熟悉,应尽量向这一方向靠拢。在设计语言上,已决定使用Visual Studio .NET进行编程。总的来说,系统的用户界面应作到可靠性、简朴性、易学习和使用。
6.2 内部接口
内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。
6.3 E-R图
初步E-R图和三范式E-R图如图6.1和6.2所示。其中6.1是初步E-R图,涉及常用的实体以及属性。清楚的说明了学生、教师、管理员可以进行的一些操作以及反馈信息。图6.2是满足三范式的E-R图。具体信息如图6.1和6.2所示。
图6.1 初步E-R图
图6.2 三范式E-R图
6.4 数据结构设计
根据数据库的原理再加上E-R图的设计,将进行数据结构设计。在数据库下创建5个重要数据表。其结构如下所示:
1. 班级信息表(ClassInfo),如表6-1所示。
表6-1 ClassInfo表
字段
类型
描述
ClassID
自动编号
班级编号(主键)
ClassName
文本
班级名称
SpecialtyName
文本
专业名称
ClassNumber
文本
教书编号
Length
数字
学制
Teacher
文本
班主任
EnrolmentTime
日期/时间
入校时间
Remark
备注
备注
2. 课程表(Course),如表6-2所示。
表6-2 Course表
字段
类型
描述
CourseID
自动编号
课程编号(主键)
ClassID
数字
班级编号
Course
文本
课程名称
Semester
文本
学期
3. 成绩表(ScoreInfo),如表6-3所示。
表6-3 ScoreInfo表
字段
类型
描述
ScoreID
自动编号
成绩编号(主键)
Semester
文本
学期
StudentNumber
文本
学生学号
Course
文本
课程
Score
数字
分数
4.专业表(SpecialtyInfo),如表6-4所示。
表6-4 SpecialtyInfo表
字段
类型
描述
SpecialtyID
自动编号
专业编号
SpecialtyName
文本
专业名称(主键)
Remark
备注
备注
5. 学生信息表(StudentInfo),如表6-5所示。
表6-5 StudentInfo表
字段
类型
描述
StudentID
自动编号
自动编号(主键)
StudentNumber
文本
学号
Name
文本
姓名
Sex
文本
性别
Address
文本
家庭住址
Telephone
文本
联系电话
ClassID
数字
班级编号
Remark
备注
备注
7 具体设计
7.1 系统程序流程图
7.1.1 学生基本信息模块
学生基本信息模块涉及了学生的个人信息以及成绩查询的选项。在这里学生可以根据自己的需求选择要进行的操作。进行相应的操作就会把相应的信息输出,以便可以清楚的查询自己所需要的知识。流程图如下图7.1所示。
图7.1学生基本信息流程图
7.1.2 学生选课模块
该模块重要涉及了学生在选课数据库里进行选课的一些操作。学生可以在这里输入信息,然后选择自己想要选择的课程。当然,学生在这里也可以查询课程的一些相关信息。流程图如下图7.2所示。
图 7.2学生选课流程图
7.1.3学生成绩查询模块
该模块重要提供学生对成绩的查询信息。学生可以在此输入学号和密码后,查询自己想要查询的课程的成绩信息。流程图如下图7.3所示。
图7.3学生成绩查询流程图
7.1.4 教师基本信息模块
该模块重要说明了教师的一些基本信息。涉及自己的授课查询以及对学生成绩的查询等一些操作。流程图如下图7.4所示。
图7.4教师基本信息流程图
7.1.5 教师选课模块
本模块重要说明了教师可以进行自己授课的一些选择。可以在选课信息表里选择自己要专家的课程。流程图如下图7.5所示。
图7.5教师选课流程图
7.1.6 管理员基本信息模块
该模块重要说明了管理员应当具有的一些权利以及对一些信息的管理以及查询。管理员可以在这里进行学生成绩的管理以及教师选课的一些信息管理。流程图如下图7.6所示。
图7.6管理员基本信息流程图
7.1.7 管理员信息维护模块
该模块重要说明了管理员可以对一些信息进行维护的操作。其中,这些信息可以是学生的或者是教师的信息都可以在这里进行维护。流程图如下图7.7所示。
图7.7管理员信息维护流程图
7.2 界面设计
用户登陆:该系统根据用户的身份实现了不同的功能,用户登陆时需要选择一种登陆方式(默认情况下是学生),系统再根据用户选择的登陆方式到相应的表中去搜索。例如,登陆时选择了教师登陆方式,系统将会在教师信息表中搜索是否存在与该用户的输入相符的信息,假如存在则进入教师主页,否则提醒用户输入有误,请重新输入。
7.2.1 学生用户界面
学生的初始密码是由管理员指定的。学生登陆后,可以按照规定自行修改使用密码。一方面需要输入原始密码,假如原始密码没有输入对的将不能修改密码,只有在原始密码对的的基础上,用户才干继续下面的操作。新密码设定后,系统还规定用户再输入一次反复密码,避免由于误输而导致密码丢失。查询指定学期成绩:学生可以查询自己指定学期的成绩和所有的成绩。方便学生了解自身情况。
选课系统:学生选课系统是针对学生进行网上选课而设计的,学生可以自主选择自己想修的课程。
7.2.2 教师用户界面
查询授课计划:教师可以运用该系统实现查询授课计划的功能,教师不仅可以看到自己本学期要授的课程信息,还能查看选修相应课程的学生名单,同时可以添加相应课程的学生成绩。帮助教师提高了工作效率。
查询学生基本信息:教师可以查询学生的基本信息,以帮助教师了解学生情况。
7.2.3 管理员界面
学生基本信息管理:学生基本信息管理涉及学生基本信息添加、学生基本信息修改、学生基本信息删除。下面给出的是学生信息添加界面
教师基本信息管理:教师基本信息管理涉及教师基本信息添加、教师基本信息修改以及教师基本信息删除。
8 测试报告
8.1 测试系统模块
一方面进入该软件如下图8.1所示,可以进行用户的选择。
图8.1 登录系统
进入教师模块可以对学生的成绩进行录入,涉及课程编号、课程名、学分、平时成绩、实验、卷面成绩等信息。如下图8.2所示。
图8.2 教师模块
进入学生模块后,可以输入学号来进行成绩的查询。其中成绩涉及平时成绩、实验成绩、卷面成绩等信息。如下图8.3所示。
图8.3学生模块
进入管理员模块后,可以进行学生基本信息录入、查询学生信息、班级信息、删除等操作。也可以将成绩按照综合成绩排或者学分来排序。入下图8.4所示。
图8.4 管理员模块
8.2测试摘要
软件所要实现的功能及程序的关系如下表8-1:
表8-1 软件测试功能
8.3 局限性之处
测试的时候有些算法还需简化,由于安全性与权限及运营速度要达成一个平衡。我们尚有待找到一个平衡支点。要使软件更加的安全和权限更好的分派给不同的用户。设计时还应当尽也许多的设计更好的模块。使得模块功能更多,但结构更简洁。使每个人都能容易的掌握操作原理以及技巧。
9 用户手册
9.1编写目的
编写该文档是为了指导普通用户使用操作该程序。解决和查询想要知道的数据,并为测试提供依据。该文档的阅读者为普通用户和测试人员。
9.2背景
1)待开发系统软件名称:学生成绩管理系统;
2)本项目的任务提出者是学校信息管理系统的各位老师,由本小组负责开发,用于太原科技大学广大师生成绩查询及管理;
3)开发背景:本系统属于太原科技大学网络管理系统的学生成绩管理模块,实现的是网络管理系统中关于学生成绩管理的子功能,通过此软件,提高用软件工程分析问题、解决问题的能力,同时增强对数据库和VC的使用能力。
9.3运营环境
9.3.1硬设备
1)至少具有奔腾III800,128M内存配置的计算机;
2)Microsoft鼠标,或其他兼容鼠标;
3)至少500M的磁盘空间;
4)至少32MB的RAM存储器。
9.3.2支持软件
操作系统:WIN98,WIN2023,WINXP和Vista等
执行程序:visual C
数据库:SQL Sever 2023
9.3.3数据结构
本系统的使用需要连接SQL Server数据库,当需更新数据库时,可以新建数据库,并且在数据库中按需要新建各个表格,存储在相应的文献夹中。
附录
程序源代码如下:
#include<iostream>
#include<string>
#include<fstream>
#include<conio.h>
using namespace std;
class stu
{
char number[10];
char name[20];
public:
stu(char a[10],char b[20])
{
strcpy(number,a);
strcpy(name,b);
}
char* getnumber()
{
return number;
}
char* getname()
{
return name;
}
};
class stu1 : public stu
{
char sex[4];
char sushenumber[8];
char telephone[10];
public:
stu1(char a[10],char b[20],char c[4],char d[8],char e[10]):stu( a, b)
{
strcpy(sex,c);
strcpy(sushenumber,d);
strcpy(telephone,e);
}
friend void main();
};
class stu2 : public stu
{
char classnumber[8];
char classname[10];
double score,pingshigrade,shiyangrade,juanmiangrade,zonghegrade,lastscore;
public:
stu2(char a[10],char b[20],char f[8],char g[10],double aa,double bb,double cc,double dd,double ee,double ff):stu(a,b){
strcpy(classnumber,f);
strcpy(classname,g);
score=aa;
pingshigrade=bb;
shiyangrade=cc;
juanmiangrade=dd;
zonghegrade=ee;
lastscore=ff;
}
friend void main();
};
void main()
{
char c; string password;int flag7=0;int s=0;
cout<<"欢迎进入学生成绩管理系统"<<endl;
cout<<"请输入你的登录密码"<<endl;
do { do{
c=getch();
if(c==char(13)) break;
password+=c;cout<<"*";
}while(1);
cout<<"\n";
if(password=="123456")
{
flag7=1;
char number[10];
char name[20];
char sex[4];
char sushenumber[8];
char telephone[10];
int i=0,I=0,j=0;int ja;ja=0;
ofstream *file[50];
stu1 *s[50];
stu2 *s1[50];
char classnumber[8];
char classname[10];
double score,pingshigrade,shiyangrade,juanmiangrade,zonghegrade,lastscore;
bool flag=0;
int p;
char c6;
do
{
cout<<"请输入你的身份:"<<endl;
cout<<"1 管理员"<<endl;
cout<<"2 老师"<<endl;
cout<<"3 学生"<<endl;
do
{
cin>>p;
if(1<=p&&p<=3)
flag=1;
else
cout<<"错误指令!请重新输入。"<<endl;
}while(flag==0);
if(p==1)
{
cout<<"欢迎进入管理员模块"<<endl;
char c4;
do{
cout<<"请输入您要进行的操作"<<endl;
cout<<"1 学生基本信息录入"<<endl;
cout<<"2 查询学生基本信息"<<endl;
cout<<"3 查询班级学生信息"<<endl;
cout<<"4 删除功能"<<endl;
cout<<"5 按综合成绩实现排序功能"<<endl;
cout<<"6 按实得学分实现排序功能"<<endl;
int m;
cin>>m;
switch(m)
{
case 1:
char c;
do{
cout<<"请输入学号"<<endl;
cin>>number;
cout<<"请输入姓名"<<endl;
cin>>name;
cout<<"请输入性别"<<endl;
cin>>sex;
cout<<"请输入宿舍号码"<<endl;
cin>>sushenumber;
cout<<"请输入电话号码"<<endl;
cin>>telephone;
file[ja]=new ofstream("d:\\a.txt",ios::app);
*file[ja]<<"学号"<<number<<"姓名"<<name<<"性别"<<sex<<"宿舍号码"<<sushenumber<<"电话号码"<<telephone<<endl;
ja++;
s[i]=new stu1(number,name,sex,sushenumber,telephone);
i++;
cout<<"数据录入成功,想继续输入吗(y/n)"<<endl;
cin>>c;
flag=0;
do{
if(c!='y'&&c!='n')
{
cout<<"错误指令!请重新输入!"<<endl;
cin>>c;
}
else
flag=1;
}while(flag==0);
}while(c=='y');
break;
case 2: //查询学生基本信息
char n[20]; char c1;int a;
do{
int flag1=0;
cout<<"请输入查询的方式"<<endl;
cout<<"1 学号查询"<<endl;
cout<<"2 姓名查询"<<endl;
cin>>a;
if(a==1)
{
cout<<"请输入你要查询的学生的学号"<<endl;
cin>>n;
for(int j=0;j<i;j++)
if(strcmp(n,(*s[j]).getnumber())==0)
{
flag1=1;
cout<<"你要查询的学生是: "<<(*s[j]).getnumber()<<endl;
cout<<"学号"<<(*s[j]).getnumber()<<"姓名"<<(*s[j]).getname()<<"性别"<<(*s[j]).sex<<"宿舍号码"<<(*s[j]).sushenumber<<"电话号码"<<(*s[j]).telephone<<endl;
}
}
if(a==2)
{
cout<<"请输入你要查询的学生的姓名"<<endl;
cin>>n;
for(int
展开阅读全文