C语言实现简易点餐系统:代码详解与功能展示
#include <stdio.h> #include <stdlib.h> #define MAX_MENU_ITEMS 100 // 菜单项结构体 typedef struct { int itemId; char itemName[50]; double itemPrice; } MenuItem; // 菜单管理结构体 typedef struct { MenuItem menuItems[MAX_MENU_ITEMS]; int numOfItems; } Menu; // 初始化菜单 void initMenu(Menu *menu) { menu->numOfItems = 0; } // 向菜单中添加菜品 void addItemToMenu(Menu *menu, int itemId, char itemName[], double itemPrice) { if (menu->numOfItems < MAX_MENU_ITEMS) { MenuItem newItem; newItem.itemId = itemId; strcpy(newItem.itemName, itemName); newItem.itemPrice = itemPrice; menu->menuItems[menu->numOfItems++] = newItem; } } // 打印菜单 void printMenu(Menu *menu) { printf("菜单:\n"); for (int i = 0; i < menu->numOfItems; i++) { printf("%d. %s - $%.2f\n", menu->menuItems[i].itemId, menu->menuItems[i].itemName, menu->menuItems[i].itemPrice); } } // 点餐 void orderFood(Menu *menu) { int itemId; int quantity; printf("请输入您要点的菜品编号: "); scanf("%d", &itemId); printf("请输入您要点的份数: "); scanf("%d", &quantity); double totalPrice = 0.0; int itemFound = 0; // 根据菜品编号查找菜品并计算总价 for (int i = 0; i < menu->numOfItems; i++) { if (menu->menuItems[i].itemId == itemId) { totalPrice = menu->menuItems[i].itemPrice * quantity; itemFound = 1; break; } } // 打印点餐结果 if (itemFound) { printf("您点的菜品是:%s,份数:%d,总价:$%.2f\n", menu->menuItems[itemId-1].itemName, quantity, totalPrice); } else { printf("菜单中没有该菜品。\n"); } } int main() { Menu menu; initMenu(&menu); // 添加菜品 addItemToMenu(&menu, 1, "鱼香肉丝", 10.0); addItemToMenu(&menu, 2, "宫保鸡丁", 12.0); addItemToMenu(&menu, 3, "回锅肉", 15.0); // 显示菜单 printMenu(&menu); // 点餐 orderFood(&menu); return 0; } ######[AI写代码神器 | 1372点数解答 | 2024-06-04 10:05:24]
- Python 实现简易密码设置系统:多种功能交互与安全要点揭秘(字节豆包 | 286点数解答 | 2025-03-28 10:43:21)379
- C语言实现多功能密码设置系统:含代码及安全注意要点(字节豆包 | 414点数解答 | 2025-03-28 10:43:55)366
- C 语言实现:超简单密码设置系统,含代码与注意要点!(字节豆包 | 519点数解答 | 2025-03-28 12:42:02)403
- C语言实现密码管理系统:含功能代码与安全注意事项(字节豆包 | 409点数解答 | 2025-04-05 18:09:56)351
- C语言实现多功能密码系统:初始化、确认、设置、显示、重置与退出(字节豆包 | 454点数解答 | 2025-04-05 18:48:42)352
- C语言实现密码管理系统:含初始化、确认、设置、显示、重置及退出功能(字节豆包 | 413点数解答 | 2025-04-06 15:37:16)298
- C 语言实现密码管理系统:含初始化、确认、设置、显示、重置及退出功能(字节豆包 | 403点数解答 | 2025-04-06 15:37:54)310
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)369
- 深度揭秘 Oracle Workarea Size Policy:参数调优助力数据库性能飞升(阿里通义 | 372点数解答 | 2024-05-13 10:54:45)251
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)341
- 用 JS 中 for 循环实现 1 到 100 相加并输出结果到页面的完整代码 ( | 240点数解答 | 2024-05-20 22:11:29)493
- 用 JS 的 while 循环实现 1 到 100 相加并输出到页面的代码揭秘( | 47点数解答 | 2024-05-20 22:16:48)378