【南邮】C/C++程序设计选题(14题)[2024-11-25]
程序设计(上机)题库
1. ATM模拟器
- 难度等级
☆ ☆ - 课题描述
ATM的管理系统是银行流程业务中,十分重要且必备的环节之一。在银行业务流程中,有着承上启下、起承转合的作用。本课题可以帮助人们更加熟悉ATM的各类操作,从而方便生活中的使用。其基本功能如下:密码验证机制;吞锁卡机制;存取款功能;账户查询功能;转账功能等。 - 课题要求
要求实现以下基本功能:
[1] 系统内的相关信息文件由程序设计人员预先从键盘上录入,文件中的数据记录不得少于20条;
[2] 设计并实现系统的相关界面,使用分级菜单提高人机交互性;
[3] 登录系统必须输入正确的卡号和密码,输入错误时提示用户,连续输入错误3次则显示锁卡,用户登录后可以修改自己的密码;
[4] 取款功能:输入取款金额,核对。若超出账户余额,则输出“余额不足”则,输出对应金额的现金,并提示用户是否打印回单,退卡,返回界面;
[5] 存款功能:存入现金,核对金额,存入账户,提示用户是否打印回单,返回主界面;
[6] 查询账户信息,包括用户名、余额信息,以及各种操作的历史记录;
[7] 转账模块,提示用户输入正确的账号,检查转账条件是否满足,并完成转账操作;
[8] 退出终端系统,提示用户保存好银行卡。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
2. 猜单词游戏
- 难度等级
☆ ☆ - 课题描述
从一篇英文短文中任意提取一个单词,给出该单词的字母数量,让游戏者猜单词的拼写字母,游戏者每次只能猜一个字母,如果游戏者猜的字母在单词中,单词中所有的该字母将被视为已猜出,例如:如果原单词是apple,游戏者猜出了p,则程序应显示当前猜出的残缺单词为-pp–;设置选择时间限制或猜错次数限制,超过限制则游戏失败。
1-5个字母为初级;5-9个字母为中级;10个字母以上为高级,猜错次数限制自定。 - 课题要求
要求实现以下基本功能:
[1] 设计游戏者信息格式,记录用户名、成绩,并保存,下次开始时可选择用户继续游戏,用户信息存放在user.txt中。建立个人积分排行榜,保留前五名的积分成绩。
[2] 设计竞赛单元,并保留最佳猜单词能手的前三名(成绩可以规定时间内猜中的数量计,也可以猜中的速度计,自行设计)。
[3] 游戏过程中,猜错的字母将被记录下来,每次猜测后,游戏应显示出当前猜出的残缺单词,以及当前猜错的所有字母,和剩下的机会。
[4] 提供相应安全机制,保证程序的健壮性,如选择单词长度时,应避免非数字字符的输入造成程序出错等。
[5] 提供选择一次求助机会。如显示单词一秒钟,或给出指定位置上的一个字母等。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
3. 通讯录
- 难度等级
☆ ☆ ☆ - 课题描述
手机已成为生活中必不可少的设备。管理其中的联系人信息,包括常用的社交 信息更是不可或缺的。本课题用 C/C++ 实现联系人信息的管理。 - 课题要求
要求实现以下几个基本功能:
[1] 联系人信息管理。设计并定义合理的信息模块,例如:基本信息(姓名、工作单位、电话号码等)、社交信息(QQ 、微信号、电子邮箱、博客等)等各种信息。支持一人多号。支持备注名(例如:父亲、老板等)。
[2] 自定义分组(例如单位、家长群、健身)。
[3] 常规操作,包括联系人信息的增加、删除、修改。
[4] 查询。支持精确查询和模糊查询。精确查询可按电话号码、姓名的查询。模糊查询可按姓名首字母、部分姓名查询。查询结果显示所有符合条件的联系人列表,并可进一步显示列表中每个联系人的详细信息。
[5] 名片导出。生成指定联系人的名片,存储为单个文件,文件名为联系人姓名。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
4. 记账程序
- 难度等级
☆ ☆ ☆ - 课题描述
该系统要求实现一个简单、实用的记账程序,主要功能包括帐务收支明细数据的录入、查找、修改、删除、统计、排序等。所有帐务数据都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法思想的应用。 - 课题要求
要求实现以下几个基本功能:
[1] 程序中有合理的数据结构设计,如个人帐务数据是由帐务明细条目构成,其信息应包括:序号,日期(年、月、日),收支项类别(餐饮、交通出行、生活缴费、衣着、学习、休闲娱乐、日用耗品、医疗、投资、奖励等等),收支金额(正/负数表示收支),备注等(可自行设计添加条目)。
[2] 添加帐务明细数据。
[3] 查找帐务数据(可按序号、日期(年、月、日)、名称、金额等查找)。
[4] 修改和删除帐务明细条目(先查找,再修改。若查找出多个条目,则进一步提示用户选择条目的序号,再修改)。
[5] 对帐务数据排序(可按日期、名称、金额等排序。要求排序后,记录的序号也要重新编排)。
[6] 帐务统计(根据日期范围,进行分类汇总并输出报表,如不同类型的支出进行汇总)。
[7] 保存帐务数据到文件中、从文件中读入帐务数据。
[8] 界面要求提供多级菜单。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
5. 会员管理程序
- 难度等级
☆ ☆ - 课题描述
本课题要求实现一个会员计费管理系统,对会员进行分级管理,根据会员的级别享受不同的优惠政策。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法思想的应用。 - 课题要求
要求实现以下几个基本功能:
[1] 登记新会员。将会员个人信息录入系统。
[2] 会员信息查询、修改、续费。
[3] 会员消费结算。根据会员卡号(或者手机号)找到该会员信息,进行此次消费结算,以一年时间为周期,累计消费(或续费)满5000升级为银卡会员,享受95折,满10000升级为金卡会员,享受9折,满20000升级为钻石卡会员,享受8折优惠,若一年内没有达到所在级别的消费额度则自动降级。
[4] 会员退会,(注销会员卡号,余款退还,删除会员信息)。
[5] 统计功能:按照会员的缴费总额进行排序,并给出所有会员的缴费总额,实际消费总额。能够按会员的累计消费总额排序。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
6. 校园失物招领
- 难度等级
☆ ☆ - 课题描述
经常有一些丢三落四的同学,在不经意的时候会丢失物品。比如:在机房,每天做值日的同学都会发现有U盘、钥匙、书本等物品被落下,他们会将这些物品放在固定位置或交由工作人员保管,等待失主认领。然而,实际情况非常糟糕。有的同学丢了东西会自己回来找,有的同学丢了东西,连在哪里丢的都记不起来了,导致总有一些物品长期无人认领。请你设计一款合适的失物招领软件,帮助机房工作人员完成统计每天学生遗漏的物品和认领情况。 - 课题要求
要求实现以下几个基本功能:
[1] 登记物品。将登记的所有信息以周为单位保存到文件,文件名为学期加周次,如“2023-2024-01-01.txt”。
[2] 查询物品。根据物品遗失具体地点、时间(日期区间)、物品种类(存储设备、书籍、文具等)、型号等相关信息查询相关物品及认领情况。
[3] 物品认领。当物品被认领后,留下认领人的相关信息,如学号、手机号码等。并将物品状态改为“已认领”。
[4] 浏览物品。按物品遗失时间、认领时间等显示所有遗失物品。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
7. 影院售票系统
- 难度等级
☆ ☆ ☆ - 课题描述
已知某电影院有5个放映厅,请模拟实现电影放映排片和观众购票。系统要求对文件中所存储的票务信息进行各种常规操作,如:查询、计算、显示等功能。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些算法思想的应用。。 - 课题要求
要求实现以下几个基本功能:
[1] 从文件中读取每个放映厅的座位分布信息。
[2] 从文件中读取每个放映厅的排片信息。排片包括放映时段和影片名。
[3] 统计某部电影当天的票款。
[4] 对当天的票房进行排序。
[5] 查询某个放映厅某个放映时段的售票情况。查询结果显示如下:
-----第x放映厅-----
--------放映时段-------
--------影片名---------
□□□□□□□□□□
□□□□□□□□□□
□□□●●□□□
□□□●●●□□
□□□□□●●● ●已售出 □待售
[6] 选座购票。
[7] 退票。
4) 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
8. 薪酬管理程序
- 难度等级
☆ ☆ - 课题描述
本课题要求实现对员工信息和工资信息的管理。一个综合的员工管理系统,要求能够管理若干个员工信息及工资,需要实现以下功能:读取以数据文件形式存储的员工信息;可以按工号增加、修改、删除员工的信息;按照工号、姓名、岗位等方式查询员工信息;可以按照工号顺序浏览员工信息;能够对员工的收入进行排名。
系统内的所有信息必须以文件的方式存储在硬盘中,员工信息文件,存放了员工的工号,姓名,性别,岗位,总工资,依据总工资的排名。格式如下:
B01,Tom,Male,部门经理,15000
B02,Rose,Female,人力资源,10000
B03,Jack,Male,财务,8000
…… - 课题要求
要求实现以下几个基本功能:
[1] 系统内的相关信息文件由程序设计人员预先从键盘上录入,文件中的数据记录不得少于20条;
[2] 设计并实现系统的相关界面,提供良好的交互界面;
[3] 排序功能:能实现由用户选择按各项数据升序或降序排序对查询出的信息进行显示;
[4] 添加/删除/修改员工信息;
[5] 查询。按工号、姓名、岗位等查询员工信息。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
9. 食堂管理程序
- 难度等级
☆ ☆ ☆ - 课题描述
编写一个食堂管理程序,实现学生就餐卡管理和菜品管理以及消费记录统计等相关功能。所有数据包括学生就餐卡信息,菜品信息等都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法的应用。。 - 课题要求
要求实现以下几个基本功能:
[1] 从文件读取菜品数据。要求程序运行过程中可更新菜品。
[2] 从文件读取学生校园卡数据。数据包括卡号、学号、姓名、余额等。当校园卡余额发生变动,需同步更新到文件。
[3] 充值。向校园卡充入金额。
[4] 点餐。学生用校园卡购买菜品。消费记录(消费者信息、消费内容、消费金额)写入文件。
[5] 营业额统计。将当日营业总额,每个菜品的营业金额写入文件。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
10. 物业缴费程序
- 难度等级
☆ ☆ ☆ - 课题描述
为维护小区正常的运营管理,居民应按时缴纳小区管理费,请设计一个物业缴费程序,对小区的住户进行收费管理。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法思想的应用。。 - 课题要求
要求实现以下几个基本功能:
[1] 住户信息管理。从文件导入住户信息,户主姓名、性别、联系电话、楼号,单元号,房号,面积、物业月单价(高层3元/平方,多层2元/平方,由楼号区分),公摊水电费等。
[2] 缴费情况查询。可按房号、户主姓名查询住户的缴费情况。缴费情况包括住户信息、历史缴费记录、到期月份(物业费缴纳到哪个月份)。
[3] 物业缴费。输入缴费月数,自动计算应缴物业费和到期月份。将缴费记录写入文件。
[4] 优惠政策。一次缴纳一年以上物业费的住户享9.5折优惠。一次缴纳两年以上物业费的住户享9折优惠。
[5] 统计未按期缴费的住户信息。输出内容包括:房号、户主姓名、 月数、欠费金额。可按欠费金额多少或者楼号对住户信息进行排序。该信息在屏幕输出外,应同时写入文件。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
11. 选课程序
- 难度等级
☆ ☆ ☆ - 课题描述
同学们每学期都会涉及选修课,根据学校的学籍管理规定,每学期必须选修一定学分的选修课,请设计的一个选课程序,帮助同学们完成选课任务。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法思想的应用。。 - 课题要求
要求实现以下几个基本功能:
[1] 课程信息通过文件导入。课程信息包括课程编号、课程名称、课程类别(公共课、必修课、选修课)、总学时、授课学时、实验或上机学时,学分、开课学期、人数限额等,通常16个学时计1学分,实验或上机24个学时计1学分。
[2] 学生信息通过文件导入。学生信息包括学号、姓名、所属学院、专业、最低总选修学分。
[3] 选课。学生输入学号、学期后,开始选课。选课过程中,学生可以浏览所有可选课程,或者按课程号、课程类别、学分筛选课程。已选课程不会出现在该学生的可选课程清单中。如果课程已选人数达到人数限额,课程不会出现在可选课程清单中。
[4] 查询选课情况。学生输入学号、学期后,程序显示学生已选课程清单,已选课程的学分总数,如果低于最低选修学分,提示还有多少学分待选。
[5] 学生选课信息需写入文件。具体内容包括:学生学号、选课学期、课程清单、学分总数。
[6] 课程选修情况查询。显示所有课程的限额人数和已选人数。根据开课学期、课程号或课程名筛选相应课程的选修情况。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
12. 实验室预约程序
- 难度等级
☆ ☆ ☆ - 课题描述
为提高实验室的利用率,向教师开放实验室预约。 - 课题要求
要求实现以下几个基本功能:
[1] 从文件导入实验室基本信息。一共有8个实验室,分硬件实验室和软件实验室两个类型。每个实验室的机位大致有40、60、80台三种规模。每天可预约的时段是1-9节。预约天数以一周为期限,文件包含预约起止日期。
[2] 实验室预约。输入预约的日期、时段(可以是连续的2节课或3节课)、所需机器数、实验室类型。程序筛选出符合条件的实验室,让用户选择预约。预约时,需填入课程名和学生班级。
[3] 实验室预约情况查询。输入日期,显示所有实验室可预约的时段。输入实验室编号,显示该实验室预约周期内每一天可预约的时段。
[4] 实验室课表导出。根据预约情况,自动生成每个实验室每一天的课表,导出到文件。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
13. 背单词程序
- 难度等级
☆ ☆ ☆ - 课题描述
背诵英语单词的软件。用户可以根据自己的需求导入需背诵的词库,并可以编辑自己的词库。背单词时有两种模式供选择:系统可以给出中文提示,用户输入对应的单词,也可输出单词让用户输入中文意思。系统判定词义是否正确。如果正确成绩加十分,如果不正确给出提示并要求用户重新输入。 - 课题要求
要求实现以下几个基本功能:
[1] 用户注册登录。
[2] 单词本。存储单词基本信息,英文、词性、中文解释等。选择词库维护编辑单词本信息,实现增加、修改、删除、补充(单词已有,补充新的释义)的功能。单词预览进行单词学习。
[3] 单词背诵及成绩统计。单词背诵时有两种模式选择,选择题背诵及拼写单词背诵,而且支持多次背诵。答对加十分,答错扣十分,错词计入错题本。可查阅自己的总成绩,未达过关成绩可以选择错题重背直至完全掌握。
[4] 单词复习。背诵完全正确时界面显示没有错题继续努力。有错题时可以选择错题重背加强记忆。退出系统时可以进行打卡,统计背诵单词天数。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。
14. 课堂考勤系统
- 难度等级
☆ ☆ - 课题描述
课堂考勤数据的录入与查询。 - 课题要求
要求实现以下几个基本功能:
[1] 考勤数据是由多条数据记录构成,其信息包括:学号(唯一)、姓名、班级、课程名、考勤日期(由月和日组成)、考勤状态(到勤、缺勤、请假)等等。
[2] 考勤数据增删改。
[3] 考勤数据查询,可按任意字段查询。
[4] 考勤数据的统计与排序。输出考勤日报表、考勤异常表、请假汇总表、考勤汇总表(某个学生、某个课程的考勤汇总)。 - 其他要求
[1] 在上述功能要求的基础上,为了提高成绩,可以添加一些额外的功能。
[2] 变量、方法命名符合规范。
[3] 注释详细:每个变量都要求有注释说明用途;方法有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
[4] 程序的层次清晰,可读性强。