数据结构大作业-外卖点餐管理程序、智能快递柜管理程序、学委作业管理系统、家谱管理系统、班级考勤管理程序、高校闲置物品交易平台、家庭记账系统、走迷宫程序

17 篇文章 5 订阅
6 篇文章 0 订阅

1、外卖点餐管理程序

问题描述:

设计一个外卖点餐系统,要求餐厅管理员可以输入菜品信息(编号,菜名,价格,数量……),顾客可以根据菜品信息下单(订餐人,电话,菜品列表,合计价格,点餐时间,确认收货时间……)或取消订单,或确认收货,还可以对订单中的菜品信息进行评价。餐厅管理员可以查看订单,出单,查看订单中的菜品评价等。

基本功能要求:

程序中的菜品列表、订单列表、顾客列表等都必须采用所学过的一种数据结构(链表、栈、队列、树等)存储,不能全部只使用数组。所有功能的操作是对数据结构(数组或链表等)中的数据进行操作。
每一个功能模块需要划分多个子模块,使用各自不同的结构体来储存不同的信息,实现信息的添加、删除、查询、修改、排序等操作。其他信息根据功能需求可以自行设计。

(1)餐厅管理员的登录功能,顾客的注册登录功能。

(2)餐厅管理员对菜品信息的添加、修改、删除、按菜品名称模糊查询、按价格范围查询、按价格的升序或降序排列显示。

(3)顾客查看菜品信息,按菜品名称模糊查询、按价格范围查询、按价格的升序或降序排列显示。

(4)顾客下单,一个订单中可以包含多个剩余数量不为0的菜品,在餐厅管理员还没有出单之前,顾客可以修改自己的订单、取消(删除)自己的订单。

(5)餐厅管理员可以查看所有订单,按下单的时间顺序查看没有出单的订单,对订单进行出单操作。查看已经出单,但没有确认收货的订单。查看已经确认收货的订单。

(6)顾客查看自己已经出单的订单,对订单确认收货。

扩展功能要求:

(1)顾客对确认收货的订单中的菜品进行评价。

(2)餐厅管理员查看已经确认收货的订单中菜品的评价。

(3)餐厅管理员统计查看月销售总额,根据订单情况分析月度最受欢迎菜品。

(4)运行文件对各种信息进行合理的保存和读取。

2、智能快递柜管理程序

问题描述:

设计并实现一个智能快递柜管理程序,要求快递派送员可以查询格口剩余状态,派送快递(包含输入手机号,分配快递格口,生成并发送取件码,记录快递格口使用状态);用户可以取快递,根据输入的取件码打开格口等。

基本功能要求:

程序至少采用所学过的一种数据结构(链表、栈、队列、树等)实现,不能全部只使用数组。
每个功能模块需要划分多个子模块,使用各自不同的结构体来存储不同的信息,实现信息的添加、删除、查询、修改等操作。其他信息根据功能需求可以自行设计。

(1)快递员登录功能

(2)快递员查询当前快递柜格口使用状态功能

(3)快递员派送快递功能,包含:输入用户手机号,选择需要的格口类别,生成并发送取件码(取件码需要与用户手机号关联,并不可重复),修改格口的使用状态。

(4)用户取快递功能,用户输入取件码打开格口,并更新格口使用状态。

扩展功能要求:

(1)快递员查询所派送的快递被收取的情况,滞留(超过 24 小时未被取出)情况;如果快递是滞留的状态,则提示快递员是否取出重新放入。

(2)快递员可以取出快递,则前一次生成的取件码失效,并通知用户。

(3)用户取快递时,如果该取件码对应的手机号还有快递未取,在快递取出后进行提醒。

3、学委作业管理系统

问题描述:

为了方便学委发布作业信息和记录收作业的情况,设计一个学委作业管理系统。要求可以记录作业的基本信息(作业编号,课程名称,作业次数,作业内容,布置时间,提交截止时间,备注……),记录每个同学的作业提交情况(班级,学号,作业编号,提交时间,备注……)。管理员可以管理班级、角色(学委和学生),学委可以管理作业和作业提交情况,学生可以查看作业和自己的作业提交情况。

基本功能要求:

系统中的作业列表、作业提交情况列表、学生列表等都必须采用所学过的一种数据结构(链表、栈、队列、树等)存储,不能全部只使用数组。所有功能的操作是对数据结构(数组或链表等)中的数据进行操作。

每一个功能模块需要划分多个子模块,使用各自不同的结构体来储存不同的信息,实现信息的添加、删除、查询、修改、排序等操作。其他信息根据功能需求可以自行设计。

(1)管理员对班级和班级学生的增删改查功能,管理员设置角色(学委/学生),每个班只有一个学委。

(2)学委和学生的登录功能,需要输入正确的密码登录。

(3)学委对作业的增删改,查询所有作业列表,按时间范围查询作业,按课程查询作业,按时间的升序或降序排列显示。

(4)学委对作业提交情况的增删改,查询学生的所有作业提交列表,按时间范围查询作业提交列表,按课程查询作业提交情况,查询某同学的作业提交情况,按时间、提交次数等的升序或降序排列显示。

(5)学生查看作业,学生查看本人的作业提交情况。

扩展功能要求:

(1)统计各课程的作业提交情况,统计各学生的作业提交情况。

(2)运行文件对各种信息进行合理的保存和读取。

4、家谱管理系统

问题描述:

家谱用于记录某家族历代家族成员的情况与关系。本系统要求能对家谱进行存储、更新、查询、统计等操作。

基本功能要求:

程序必须采用树形数据结构实现。每个家族成员是一个树结点,每个成员结点逻辑上作为其父亲结点的孩子结点插入树中(不需要记录母亲结点)。提示:可以采用孩子兄弟链表法存储树,相当于存储树对应的二叉树。

(1)录入:录入家庭成员信息,家庭成员的基本信息包括:(姓名,性别,出生日期,死亡日期,学历,职业等)。各家庭成员之间的关系,以树形结构存储;例如录入李四时,指定李四是张三的孩子,则要把李四作为张三的孩子结点插入树中。

(2)修改:修改成员信息;

(3)删除:删除成员信息(删除某成员必须把其子孙全部删除);

(4)输出:将家谱以较友好的格式输出(显示);

(5)查询:按基本信息查询成员。

扩展功能要求:

(1)统计:统计并显示结果,统计的项目可以包括(平均寿命、男女比例等);

(2)导出:把家谱信息导出到文件中保存(例:若采用孩子兄弟链表法存储树对应的二叉树,可以采用存储带虚结点的先序遍历序列);

(3)导入:把家谱信息从文件读入程序(例:采用带虚结点的先序遍历序列生成二叉树);

(4)在Visual Studio中,建立MFC项目,完成带图形用户界面的的系统。(可以用其中的树型控件展示家族成员间的关系)

5、班级考勤管理程序

问题描述:

设计一个对本班所有人员进行考勤的管理系统,要求系统管理员(班长、学委或纪律委员)可以查询、添加、删除、修改和统计考勤信息,每条考勤信息至少包括:编号,学号、姓名,日期,地点,当天第几节课,性质(只记录迟到,缺席和请假三种非出席情况)等,非管理员(本班所有人员)可以查询和统计本班考勤信息。查询和统计可以按姓名、日期、性质等分类查询,查询结果按一定顺序排序后显示(利用第7章相关排序算法)。

基本功能:

程序中的相关人员列表、考勤情况等都必须采用所学过的一种数据结构(链表、栈、队列、树等)存储,不能全部只使用数组。所有功能的操作是对数据结构(数组或链表等)中的数据进行操作。

每一个功能模块需要划分多个子模块,使用各自不同的结构体来储存不同的信息,实现信息的添加、删除、查询、修改和统计等操作。其他信息根据功能需求可以自行设计。

(1)有良好的输出界面。

(2)系统管理员的登录功能,非管理员(班级所有成员)的注册登录功能。

(3)管理员和非管理员必须为本班人员(与自己班级人员名单为准)。

(4)管理员对信息的添加、修改、删除、查询和统计(按不同情况查询或统计,结果按顺序排序显示,如统计某人所有的缺席或迟到情况、按日期统计某天所有缺席或迟到的人员(结果按学号显示)、显示所有缺席或迟到人员(结果按次数从多到少显示等等)。

(5)非管理人员只有查询和统计功能。

(6)系统可以查看全班所有人员名单,且答辩时系统至少已经录入10条以上迟到、缺席和请假信息。

扩展功能要求(不限以下3条):

(1)在考勤信息中增加确认功能,班级成员可以对考勤情况进行确认。

(2)运行文件对各种信息进行合理的保存和读取。

(3)对考勤系统进行功能扩展,使其查询、统计等功能更合理、更方便、更具使用性。

6、高校闲置物品交易平台

问题描述:

闲置物品交易平台是借助于方便快捷而且成本低的网络为高校学生提供一个二手物品交易平台,在一定程序上能够缓解大学生物品的闲置。

基本功能要求:

该平台要求至少采用所学过的一种数据结构(链表、栈、队列、树等)实现,不能全部只使用数组。所有功能的操作是对数据结构中的数据进行操作。

平台主要设置两种不同角色:物品发布者和游客。

游客可以实现:

(1)对物品进行浏览、按照不同关键字查找物品和获知该物品发布者的联系方式,物品信息浏览时可以实现按照某种排序方式进行浏览。

(2)注册成为物品发布者。

物品发布者可以实现:

(1)物品发布者可以实现对物品信息的添加、修改和删除,按照物品的某个关键字进行查询,并按照物品的价格进行升序或者降序排列显示。

(2)对自身注册信息的密码进行修改。

(3)物品发布者同样可以浏览其他发布者的物品信息,并可以进行下单购买其他发布者的物品。

(4)物品发布者可以查看订单列表,并进行发货处理。一旦买方收货则可以删除该物品的信息。

(5)买方可以查看自己的交易订单。

扩展功能要求:

设置多一个角色,即管理员。

管理员可以实现:

(1)对所有物品进行浏览、查找、获知物品发布者的联系方式和详细信息。

(2)查看所有订单信息,获知处理订单的情况等。

(3)自身密码进行修改,其他物品发布者信息的添加和删除。

(4)对不符合要求的物品信息发布进行删除。

(5)运行文件对各种信息进行合理的保存和读取。

7、家庭记账系统

问题描述:

为了方便记录家庭的收入和支出的情况,设计一个家庭记账系统。要求可以输入每个家庭成员的收入和支出情况(编号,家庭成员,金额,类型,日期,备注……),每个家庭成员的资产情况(编号,家庭成员,总资产……)。家庭成员可以查看月报表,统计家庭总收支情况,各成员的月收支情况,各成员的月资产结余等等。

基本功能:

系统中的收入和支出列表、资产列表、家庭成员列表等都必须采用所学过的一种数据结构(链表、栈、队列、树等)存储,不能全部只使用数组。所有功能的操作是对数据结构(数组或链表等)中的数据进行操作。

每一个功能模块需要划分多个子模块,使用各自不同的结构体来储存不同的信息,实现信息的添加、删除、查询、修改、排序等操作。其他信息根据功能需求可以自行设计。

(1)家庭成员的登录功能,需要输入正确的密码登录。

(2)家庭成员对收入或支出的添加、修改、删除,查询家庭的所有收入/支出列表,按月份查询账本,按类型查询收入/支出情况,按金额的升序或降序排列显示。(提示:收入类型可以分为工资、奖金、兼职等;支出类型可分为旅行、住房、伙食、服饰、日用品、交通等)

(3)统计家庭月收支情况,统计各成员的月收入/支出情况,按总金额的升序或降序排列显示。

(4)统计各成员的月资产结余情况,按总金额的升序或降序排列显示,查看月结余为负的成员的收支明细。

扩展功能要求:

(1)统计各家庭成员年收支情况,分析家庭的收入最大贡献者和家庭的最大支出类型。

(2)运行文件对各种信息进行合理的保存和读取。

8、走迷宫程序

问题描述:

以一个 m * n 的长方阵表示迷宫, 0和1分别表示迷宫的通路和障碍。 设计一个程序, 对任意设定的迷宫, 求出一条从入口到出口的通路, 或得出没有通路的结论。

基本要求 :

(1) 实现一个以链表做存储的栈类型, 然后编写一个求解迷宫的非递归程序。 求的通路以三元组(i, j, d) 的形式输出, 其中:(i, j) 指示迷宫中的一个坐标, d 表示走到下一坐标的方向。 如: 对于下列数据的迷宫, 输出一条通路:
(1, 1, 1),(1, 2, 2),
(2, 2, 2),(3, 2, 3),(3, 1, 2) ……。

(2) 编写递归形式的算法, 求得迷宫中所有可能的道路;

扩展功能要求:

以方阵形式输出迷宫及其到道路
测试数据: 迷宫的测试数据如下: 左上角(1, 1) 为入口, 右下角(8, 9) 为出口。

  • 2
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
基于STM32的智能快递柜设计程序需要实现以下功能: 1. 接收用户输入:设计程序需要能够接收用户输入的指令,如存取包裹、开启柜门等。 2. 控制柜门开关:根据用户的指令,程序需要能够控制对应柜门的开关动作,确保包裹的安全。 3. 用户身份验证:通过输入密码或扫描二维码等方式,程序需要验证用户的身份合法性,以保证只有授权人员能够使用快递柜。 4. 快递包裹管理:程序需要实现快递包裹的存储和取出功能,并保证每个包裹的安全性和防止遗失。 5. 状态监控和报警:程序需要监控柜门状态、温度以及湿度等环境参数,及时发出警报,以保障包裹的安全。 6. 通信功能:可以通过与服务器或手机等设备连接实现远程控制和监控,提供用户更方便的使用体验。 7. 错误处理:设计程序需要能够处理各种异常情况,如柜门故障、包裹丢失等,保证系统的稳定性和可靠性。 8. 日志记录和分析:程序需要记录用户的存取记录、柜门故障记录等,并能够提供相应的数据分析报表。 基于STM32的智能快递柜设计程序需要将上述功能模块进行集成,能够将用户的需求转化为对快递柜的具体操作,确保程序的稳定性和可靠性。在设计过程中,还需要考虑硬件资源和性能的限制,以及用户交互的友好性和便捷性。通过合理的设计和优化,实现智能快递柜的高效管理和安全保障。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值