C++航空订票实战:结构体与输入验证
5星 · 超过95%的资源 42 浏览量
更新于2024-09-03
收藏 82KB PDF 举报
在本篇C++实现的航空订票程序中,作者着重介绍了如何通过结构体和基本输入输出操作来设计一个简单的订票系统。首先,文章提到使用C++构建一个面向对象的编程模型,尽管这里的同学尚未学习完整的面向对象编程,但通过实例展示了如何运用基础概念。主要涉及以下几个关键知识点:
1. 结构体的运用:
- 通过`struct Seat`定义了座位的基本属性,包括座位类型(`chartype`,如F表示一等舱,E表示经济舱)、座位编号(`int number`)和座位预定状态(`bool isReservation`)。这体现了面向对象中的数据封装和抽象,将每个座位视为一个独立的对象。
- `struct Ticket`则包含了座位对象和乘客姓名,用于存储每张票的预订信息。
2. 功能模块设计:
- `bool check(string name)`函数用于检查某个乘客是否已经订过票,通过遍历`tickets`数组判断乘客名是否存在。
- `void input()`函数负责处理用户输入,包括乘客姓名和舱位类型的选择。该函数采用了递归设计,允许错误处理并继续交互。
3. 输入验证:
- 程序要求输入的乘客姓名和舱位类型必须符合规定,例如,乘客名只能订一个座位且未被预定,舱位类型仅限于"F"或"E",座位号仅限于1~25且未被占用。对于无效输入,程序会给出相应的提示。
4. 订票流程:
- 用户首先输入姓名,然后根据输入选择舱位类型。如果选择的座位已满,程序会提示并要求重新选择。重复该过程直到用户选择"."结束订票。
5. 打印订票信息:
- 最后,程序按照舱位类型和座位号对所有订票信息进行排序,并输出乘客姓名和座位详情,体现了数据的整理和展示。
通过这个航空订票程序,作者展示了C++编程中的基础结构体、函数设计以及如何处理用户输入,同时引入了面向对象编程的核心思想。这对于初学者来说是一个很好的实战练习,有助于理解和应用C++编程语言。
2018-10-28 上传
2024-01-10 上传
2023-12-21 上传
2023-11-01 上传
2024-07-02 上传
2023-12-28 上传
2023-04-19 上传
weixin_38684335
- 粉丝: 1
- 资源: 932
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常