news 2026/6/15 15:54:44

外卖订餐管理系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
外卖订餐管理系统

实验五 外卖订餐管理系统

实验目的

1.理解程序的基本概念——程序、变量、数据结构;

2.学会使用顺序、选择、循环、跳转语句编写程序;

3.学会使用数据和方法。

实验内容

开发一个外卖订餐系统,需要实现“我要订餐”、“查看餐袋”、“签收订单”、“删除订单”、“我要点赞”和“退出系统”六个功能。项目运行结果如图1所示。

图1 外卖订餐系统

三、程序代码及分步功能解析

package Q; import java.util.Scanner; public class OrderingMgr { String[] names= new String[10]; String[] dishMegs= new String[10]; int[] times= new int[10]; String[] addresses= new String[10]; int[] states= new int[10]; double[] sumPrices= new double[10]; String[] dishNames= {"红烧肉","烤鱼","麻辣香锅"}; double[] Prices= {5,25,15}; int[] praiseNums=new int[dishNames.length]; public static void main(String[] args) { OrderingMgr order = new OrderingMgr(); while(true) { order.showMainMenu(); Scanner input = new Scanner(System.in); int choice = input.nextInt(); switch (choice) { case 1: System.out.println("***我要订餐***"); order.placeOrder(); break; case 2: System.out.println("***查看餐袋***"); break; case 3: System.out.println("***签收订单***"); break; case 4: System.out.println("***删除订单***"); break; case 5: System.out.println("***我要点赞***"); break; case 6: System.out.println("感谢使用外卖订餐系统,再见!"); System.exit(0); System.exit(0); break; default: System.out.println("输入错误,请选择1-6之间的数字!"); break; } } } public void showMainMenu(){ System.out.println("欢迎使用“外卖订餐系统”"); System.out.println("*****************************"); System.out.println("1.我要订餐"); System.out.println("2.查看餐袋"); System.out.println("3.签收订单"); System.out.println("4.删除订单"); System.out.println("5.我要点赞"); System.out.println("6.退出系统"); System.out.println("*****************************"); System.out.println("请选择:"); } public void placeOrder(){ boolean flag = false; for (int j = 0; j < names.length; j++) { if (names[j] == null) { // 找到第一个空位置,可以添加订单信息 flag = true; // 置标志位,可以订餐 //输入订餐人的姓名 System.out.print("请输入订餐人姓名:"); Scanner input = new Scanner(System.in); String name=input.next(); //选择的菜品和份数 System.out.println("序号" + "\t" + "菜名" + "\t" + "单价"); for (int i = 0; i < dishNames.length; i++) { String price = Prices[i] + "元"; String praiseNum = (praiseNums[i] > 0) ? praiseNums[i] + "赞" : ""; System.out.println((i + 1) + "\t" + dishNames[i] + "\t" + price + "\t" + praiseNum); } // 用户点菜 System.out.print("请选择您要点的菜品编号:"); int chooseDish = input.nextInt(); System.out.print("请选择您需要的份数:"); int number = input.nextInt(); String dishMeg = dishNames[chooseDish - 1] + " " + number + "份"; //餐费计算 double sumPrice = Prices[chooseDish - 1] * number; // 餐费满50元,免送餐费,否则5元 double deliCharge = (sumPrice >= 50) ? 0 : 5; //输出订单时间 System.out.print("请输入送餐时间(送餐时间是10点至20点间整点送餐):"); int time = input.nextInt(); while (time < 10 || time > 20) { System.out.print("您的输入有误,请输入10~20间的整数!"); time = input.nextInt(); } System.out.print("请输入送餐地址:"); String address = input.next(); System.out.println("订餐成功!"); System.out.println("您订的是:" + dishMeg); System.out.println("送餐时间:" + time + "点"); System.out.println("餐费:" + sumPrice + "元, 送餐费" + deliCharge + "元, 总计:" + (sumPrice + deliCharge) + "元。"); // 添加数据 names[j] = name; dishMegs[j] = dishMeg; times[j] = time; addresses[j] = address; sumPrices[j] = sumPrice + deliCharge; break; } } } }

四、程序调试结果(要求截取详细步骤)


五、实验总结

本次实验开发了外卖订餐系统,实现了订餐、查看订单、签收、删除、点赞和退出六个功能。实验中,我用变量存储订单信息,数组管理订单列表,学会了顺序、选择、循环语句的使用,比如用循环遍历订单,用选择判断订单状态。同时,我还把不同功能写成了单独的方法,让代码更清晰。通过这次实验,我掌握了程序基础概念和基本语法,理解了数据和方法的使用,但在处理订单状态时还有些不熟练,后续会多练习,让代码更完善。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 14:22:20

事务操作流程

1.开启事务&#xff1a;明确事物的起始点&#xff08;begin或者start transaction&#xff09;2.执行操作&#xff1a;执行SQL语句3.判断结果&#xff1a;若操作都执行成功&#xff0c;提交事务&#xff0c;修改生成若任意操作失败&#xff0c;回滚事务&#xff0c;撤销所有已经…

作者头像 李华
网站建设 2026/6/15 11:32:35

打开软件出现找不到vcomp140.dll文件 无法运行的情况 下载修复解决

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/6/15 7:58:03

汇编语言全接触-27.工具提示控件

我们将学习工具提示控件:它是什么如何创建和使用.下载例子理论:工具提示是当鼠标在某特定区域上停留时显示的一个矩形窗口.工具提示窗口包含一些编程者想要显示的文本.在这点上,工具提示同状态栏的作用是一样的,所不同的是工具提示当单击或者远离指定区域的时候就会消逝,你可能…

作者头像 李华
网站建设 2026/6/15 4:06:08

测试左移:构建软件质量的早期防线

在快速迭代的现代软件开发周期中&#xff0c;缺陷发现的时机直接影响项目成本、发布节奏与最终用户体验。传统软件测试模式中&#xff0c;测试活动往往集中于开发后期&#xff0c;导致缺陷修复成本高昂、返工风险加剧。测试左移作为一种前瞻性质量保障策略&#xff0c;通过将测…

作者头像 李华
网站建设 2026/6/15 10:27:47

串口通讯的android 封装开箱即用!提供源代码!

功能概述 本文档总结了在Android应用中使用serialportlibrary实现串口通讯功能的完整过程。通过本次开发&#xff0c;成功添加了以下核心功能&#xff1a; 串口设备的打开与关闭 数据的发送与接收 用户友好的操作界面 实现细节 1. UI界面修改 在activity_main.xml中添加…

作者头像 李华