> # ♻️ 资源
> **大小:** 1.64MB
> **文档链接:**[**https://www.yuque.com/sxbn/ks/100010421**](https://www.yuque.com/sxbn/ks/100010421)
> **➡️ 资源下载:**[**https://download.csdn.net/download/s1t16/87379030**](https://download.csdn.net/download/s1t16/87379030)
> **注:更多内容可关注微信公众号【神仙别闹】,如当前文章或代码侵犯了您的权益,请私信作者删除!**
> ![qrcode_for_gh_d52056803b9a_344.jpg](https://cdn.nlark.com/yuque/0/2023/jpeg/2469055/1692147256036-49ec7e0c-5434-4963-b805-47e7295c9cbc.jpeg#averageHue=%23a3a3a3&clientId=u8fb96484-770e-4&from=paste&height=140&id=u237e511a&originHeight=344&originWidth=344&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=8270&status=done&style=none&taskId=ud96bf5f7-fe85-4848-b9c2-82251181297&title=&width=140.1999969482422)
# 校友录管理系统
## 一、 大型实验的内容
校友录管理系统(ARMS:Alumnus Record Management System)用于个人用户进行校友信息的管理,要求完成的主要的功能有录入、修改、删除、查询、排序校友信息。可以完成密码登录系统、按不同名录查找信息、按姓名或届级排序等工作。要求使用学习过的 C/C++ 程序设计的知识完成校友录管理系统的设计与实现。
## 二、 运行环境
校友录管理系统(ARMS)在 Dev-C++ 平台下开发,操作系统:Windows 10。
硬件环境:
处理器:Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz 2.70GHz
内存:8.00GB
系统类型:64 位操作系统,基于 x64 的处理器
## 三、 实验课题分析
### 3.1 校友录管理系统的主要功能
校友录管理系统(ARMS)主要功能为:主要功能包括录入、修改、删除、查询、排序校友信息。可以完成密码登录系统、按不同名录查找信息、按姓名或届级排序等工作。细的系统功能结构为图 1 所示。
![7317ae203bd5138d347dead1a0fc0ac1.PNG](https://cdn.nlark.com/yuque/0/2024/png/2469055/1711348214713-015697a5-afba-454d-8a33-f798f74b55d3.png#averageHue=%23383837&clientId=u372019cf-4225-4&from=paste&height=247&id=udab4ba05&originHeight=309&originWidth=551&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=682530&status=done&style=none&taskId=uefc7713a-a960-4284-8aeb-52cd36deee8&title=&width=440.8)
图 1 系统结构图
系统各模块的功能具体描述为:
1、登录模块
首先会展现欢迎界面,随后用户输入登录密码,初次登录时密码为 123456。用户总共有 5 次输入密码的机会,若用户连续输错 5 次密码,程序会自动关闭。登录成功后,进入菜单模块,用户可以进行包括修改登录密码在内的若干操作。程序会在用户登录前从文件读入所有的信息,包括校友信息和用户设置的密码。
退出登录的时候则要保存当前系统的所有状态,包括校友信息和用户设置的密码。
2、校友录模块
首先创建校友类来储存校友信息,并建立链表串联不同校友的信息,并在此基础上实现程序对校友信息的 6 种不同操作。
校友信息包括:姓名、性别、年龄、届级、系、班级、通讯地址、电话、QQ、Email。
6 种操作分别为:添加、修改、查找、删除、排序以及展示校友信息。
同时为了方便按届级排序,程序会要求用户在输入届级时使用四位年份。
3、菜单模块
此模块将上述两模块进行了整合,是串联整个程序的模块。
读者可以在此模块下进行 7 个操作。它们分别是:
添加校友信息:进入添加状态,根据提示依次输入校友的信息,每条目输入完成后以回车结束。操作完成后程序会提示“添加成功”,后键入任意数字程序返回菜单。
修改校友信息:考虑到校友姓名的重复性极低,因此程序以校友姓名定位所需要修改的校友。首先用户输入需要修改信息的校友姓名,接着程序进行查找,若查找不到此姓名的校友,程序会提示“未找到此校友”;若成功定位校友信息,程序会提示“您选择的是 XXX 校友”。考虑到校友的姓名、性别、年龄、届级、系、班级等信息不易出现变更的情况,因此程序只提供了修改通讯地址、电话、QQ、Email 的操作。修改一条信息后,可键入任意数字返回上层结构选择修改其他信息。
查找校友信息:按照程序提示,用户可以选择按照不同的校友信息进行查找,程序会展示所有符合条件的校友。同时考虑到在以班级查找时,往往前面需要规定届级、系等信息才能得到实用的信息,因此程序还提供了按照届级、系、专业班级查找的功能。一次查找完成后,用户可以键入任意数字返回上层结构继续选择其他的查找方式。
删除校友信息:与修改校友信息的操作类似,删除校友信息时也按照姓名进行定位。删除操作完成后,程序会提示“删除完成”;若找不到此校友,程序会提示“未找到此校友”。后键入任意数字返回菜单。
排序校友信息:程序提供了两种不同的排序方式,分别是按照姓名或届级排序。姓名是以字典序排序。两种排序方式都以升序排列。排序完成后用户可以选择展示排序后的结果,也可以键入任意数字返回菜单。
展示校友信息:直接展示当前所有校友的信息。在排序前,顺序任意。展示完成后,用户可以键入任意数字返回菜单。
修改登录密码:修改操作完成后,程序会提示“修改成功!”,后键入任意数字返回菜单。
若在菜单中直接输入-1,程序会保存所有信息后退出。为了能妥善保存程序运行时用户对不同信息的操作,强烈建议用户通过输入-1 退出程序。
### 3.2 系统分析及设计
系统有一个基本类:人员类。人员类可以派生出校友类。另外还有一个校友链表类。因为排序功能的需要,校友链表类实际是由校友类派生出来的。
可以采用面向对象的程序设计实现校友录管理系统,在校友类中存储校友信息,在链表类中实现所有功能的编写,最后通过菜单来实现所有功能的串联。
以文本文件进行数据的读入与保存,在用户登录前,将校友的信息和用户的密码读入。用户选择-1 退出程序时,进行保存。需要保存的数据包括校友信息和用户的密码。文件的读写通过链表类的成员函数和菜单实现。
同时在用户选择退出程序时,通过调用析构函数来释放链表所占用的内存空间,以此防止内存泄漏。
### 3.3 系统的实现
(1)类的编写
系统工程名为:ARMS。设置了一个基类:people 类。由此派生出 alumnus 类即校友类,每个校友都有对应的包括姓名性别在内的 10 个不同的信息。。
具体类结构声明如下:
People 类:
```cpp
# ifndef PEOPLE
# define PEOPLE
# include <iostream>
# include <string>
# include<bits/stdc++.h>
using namespace std;
class people{
public:
string name;
string sex;
string phone;
people (string na="null",string se="null",string ph="null"):name(na),sex(se),phone(ph){}
string cname(string a)//改名字
{
return name=a;
}
string csex(string a)//改性别
{
return sex=a;
}
void peopledisplay()
{
cout<<"姓名:"<<name<<endl;
cout<<"性别:"<<sex<<endl;
cout<<"电话:"<<phone<<endl;
}
};
# endif
```
alumnus 类
```cpp
# ifndef Alumnus
# define Alumnus
# include"people.h"
using namespace std;
class alumnus:public people{
public:
alumnus(string na="null",string se="null",int ag=0,string gra="null",string col="null",string cls="null",string add="null",string ph="null",string q="null",string e="null")
:people(na,se,ph),age(ag),grade(gra),college(col),classroom(cls),address(add),qq(q),email(e){}//构造函数
alumnus *next;
alumnus* g
没有合适的资源?快使用搜索试试~ 我知道了~
基于C++实现(控制台)校友录管理系统【100010421】
共22个文件
h:4个
cpp:4个
o:4个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 7 下载量 193 浏览量
2023-01-11
13:19:38
上传
评论 2
收藏 1.64MB ZIP 举报
温馨提示
详情介绍:https://www.yuque.com/sxbn/ks/100010421 校友录管理系统(ARMS:Alumnus Record Management System)用于个人用户进行校友信息的管理,要求完成的主要的功能有录入、修改、删除、查询、排序校友信息。可以完成密码登录系统、按不同名录查找信息、按姓名或届级排序等工作。要求使用学习过的 C/C++ 程序设计的知识完成校友录管理系统的设计与实现。
资源推荐
资源详情
资源评论
收起资源包目录
100010421-基于C++实现(控制台)校友录管理系统.zip (22个子文件)
arms
答辩表.docx 14KB
LICENSE 1KB
源代码
alumnus.h 1KB
people.h 529B
alumnus.o 115KB
user.cpp 559B
alumnuslist.h 567B
alumnuslist.cpp 4KB
user.h 572B
alumnus.txt 590B
ARMS.layout 504B
main.cpp 7KB
alumnus.cpp 1KB
Makefile.win 1KB
alumnuslist.o 144KB
main.o 145KB
pass.txt 6B
ARMS.dev 1KB
user.o 109KB
ARMS.exe 2.12MB
C++程序设计课程设计-校友录管理系统.doc 1.04MB
README.md 31KB
共 22 条
- 1
神仙别闹
- 粉丝: 3877
- 资源: 7473
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Django Web框架的母婴商城实践项目设计源码
- 一个使用 Go 编程语言和 WebAssembly 构建渐进式 Web 应用程序的包 .zip
- 基于Python桌面画笔的自动画图设计源码
- 基于Java语言的中医通病例问询子系统设计源码
- 基于Java语言的云南旅游主题设计源码
- 基于Java的ExamManageSystem软件详细设计课程设计源码
- 基于Java开发的简洁方便ORM工具BeetlSQL设计源码
- 基于Java语言的Reactor-QL:用SQL简化Reactor API实时数据处理设计源码
- 基于Java的tio-http-server演示学习源码
- 基于Java和C#的C#课程实验与Winform学习及Android实验设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页