用 C 制作小吃摊完整小票

用 C 制作可复用的小吃摊程序,保留购买顺序、以整数分计算总额、验证输入并保存完整小票。

项目C 语言

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

《用 C 制作小吃摊完整小票》是一门面向已掌握 C 基础、希望制作实用终端程序的学习者的项目课程。你将帮助一家小吃摊保留每次获准购买,生成包含单价、每行小计和总额的完整文本小票,所有金额均以整数分计算。

两个引导实验从可运行的单项样例开始,逐步实现独立购买记录,再加入受控输入验证和容量检查。独立挑战将这些方法用于 Evening Bites 的新目录,处理同名不同商品、零价商品和重复购买。每个单元都提供独立文件,不依赖之前实验的文件或运行中的程序。

你将学到什么

  • 使用小型 C 结构体和数组,按顺序保留商品身份与独立购买记录。
  • 以整数分计算价格、小计和总额,并显示两位小数。
  • 使用 strtol 验证完整十进制文本,处理转换溢出、尾随垃圾字符和业务范围。
  • 在修改购物记录前检查数量与容量,拒绝输入后保留已批准的各行。
  • 保存并读取完整小票,区分结账与输入结束时的取消操作。

本课程适合谁

本课程适合准备将 C 入门知识组合成小型应用的学习者。C Programming for Beginners 可提供相应基础。

前置要求: 了解 C 变量、条件、循环、数组和函数,并能使用基本终端命令及切换目录。引导实验会在使用前讲解结构体、以 NUL 结尾的 C 字符串、所需的地址与输出参数以及 strtol,不要求提前熟练掌握指针。

学习环境: LabEx 在浏览器中提供 C 编译器、准备好的源文件和 Workspace 终端,无需本地安装。程序提示、源代码和小票输出保留英文。

常见问题

我会交付什么?

你将保留可编译的 C 源码、可运行程序和真实小票文件。小票按顺序保留每次获准购买,包括重复购买,并列出商品 ID、名称、数量、单价和小计,最后给出完整总额。

我需要动态内存或文件解析经验吗?

不需要。项目使用固定大小的记录和有长度限制的文本输入。课程提供商品目录定义和输入驱动,你负责实现记录处理、验证和小票输出;通用 CSV 解析和动态内存分配不在范围内。

这是实际支付系统吗?

不是。这是一项合成小吃摊练习,最多保留六条购买记录,每次购买数量为 1 到 20,不处理支付或税费。命令 done 完成结账;输入结束信号则取消交易,不产生完整小票,也不保存未完成交易。

教师

labby
Labby
Labby is the LabEx teacher.

为您推荐

no data