【C++面向对象】C++飞机购票订票系统(源码+说明)【独一无二】

简介: 【C++面向对象】C++飞机购票订票系统(源码+说明)【独一无二】


👉博__主👈:米码收割机

👉技__能👈:C++/Python语言

👉公众号👈:测试开发自动化【获取源码+商业合作】

👉荣__誉👈:阿里云博客专家博主、51CTO技术博主

👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。



一、功能描述

实现了一个飞机订票系统。主要功能包括:

  1. 用户可以录入航班信息,包括航班号、起飞时间、降落时间、起飞城市、降落城市、座位信息、价格和折扣等。
  2. 用户可以查询特定航班的信息,包括起飞时间、降落时间、起飞城市、降落城市、剩余座位、价格和折扣等。
  3. 用户可以删除航班信息,删除后航班及其相关的用户订票信息将从系统中移除。
  4. 用户可以查看所有航班的信息,包括航班号、起飞时间、降落时间、起飞城市、降落城市、剩余座位、价格和折扣等。
  5. 用户可以进行订票操作,录入自己的姓名、身份证号和要订票的航班号,系统会为用户分配座位。
  6. 用户可以查询特定用户的信息,包括姓名、身份证号、订票航班和座位号等。
  7. 用户可以进行退票操作,输入要退票的用户姓名,系统会取消该用户对应的座位,并将座位号返还给航班的空余座位。
  8. 用户可以查看所有用户的信息,包括姓名、身份证号、订票航班和座位号等。
  9. 用户可以选择退出系统。

👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈


二、功能实现

这段代码实现了一个简单的飞机订票系统。以下是其功能简述:

  1. LQueue 类(队列)
  • 实现了队列数据结构,支持入队(EnQueue)、出队(DeQueue)和检查队是否为空(Emply)等操作。
  1. userLink 类(用户)
  • 实现了用户信息的添加、删除和查询功能,包括添加用户(add_user)、删除用户(delete_user)、查询用户(seek_user)和输出用户信息(out_user)等方法。
  1. planeLink 类(飞机)
  • 实现了航班信息的添加、删除和查询功能,包括添加航班(add_plane)、删除航班(delete_plane)、查询航班(seek_plane)和输出航班信息(out_plane)等方法。
  • 还包括了处理航班座位的功能,如录入退订座位号(back_seat)和返回座位号(out_seat)等方法。

👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈

  1. 主函数
  • 提供了用户界面,支持以下操作:
  • 录入航班信息(1)
  • 查询航班信息(2)
  • 删除航班信息(3)
  • 输出航班信息(4)
  • 用户订票(5)
  • 查询用户信息(6)
  • 用户退票(7)
  • 输出用户信息(8)
  • 退出系统(9)

通过以上功能,用户可以实现对航班和用户信息的管理,包括录入、查询、删除和输出等操作。


三、功能展示

1.录入航班

👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈

2.查询航班

3.删除航班

4.输出航班信息

👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈

5.用户订票

👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈

6.查询用户

7.输出用户信息

8.用户退票

👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈


四、部分代码示例

#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <cstring>
using namespace std;
class userLink;
struct Node
{
  int i;
  Node* next;
};
class LQueue
{
private:
  Node* front, * rear;
public:
  LQueue();
  ~LQueue();
  void EnQueue(int x);
  int DeQueue();
  bool Emply();
};
struct Plane
{
  char plane_number[10];
  char strat_time[10];
  char end_time[10];
  char strat_city[20];
  char end_city[20];
  int full;
  int empty_seats;
  int all_seats;
  LQueue backseats;
  float price;
  float discount;
  Plane* next;
};
struct user
{
  char name[10];
  char ID[20];
  char plane_number[10];
  int order_number;
  user* next;
};
// 略.........
// 略.........
//👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈
int main()
{
  planeLink air;
  userLink uli;
  int n, i, options;
  do
  {
    //system("cls");
    cout << "============================================================================" << endl
      << "=============                 飞机订票系统                     =============" << endl
      << "============================================================================" << endl
      << "                      1.录入航班." << endl
      << "                      2.查询航班." << endl
      << "                      3.删除航班." << endl
      << "                      4.输出航班信息." << endl
      << "                      5.用户订票." << endl
      << "                      6.查询用户." << endl
      << "                      7.用户退票." << endl
      << "                      8.输出用户信息." << endl
      << "                      9.退出." << endl
      << "============================================================================" << endl
      << "                      输入选项(1-8):";
    cin >> options;
    switch (options)
    {
    case 1:
    {
      //system("cls");
      cout << "录入几个航班:";
      cin >> n;
      //system("cls");
      for (i = 0; i < n; i++)
        air.imp_plane();
    }break;
    case 2:
    {
      //system("cls");
      char s[10];
      cout << "请输入要查询的航班:";
      cin >> s;
      //system("cls");
      air.seek_plane(s);
      system("pause");
    }break;
    case 3:
    {
      //system("cls");
      char s[10];
      cout << "请输入要删除的航班:";
      cin >> s;
      air.delete_plane(s, uli);
      system("pause");
    }break;
    case 4:
    {
      //system("cls");
      air.out_plane();
      system("pause");
    }break;
    case 5:
    {
      //system("cls");
      cout << "需要定票几张:";
      cin >> n;
      //system("cls");
      for (i = 0; i < n; i++)
        uli.imp_user(air);
    }break;
    case 6:
    {
      //system("cls");
      char s[10];
      cout << "请输入查询的用户:";
      cin >> s;
      //system("cls");
      uli.seek_user(s);
      system("pause");
    }break;
    case 7:
    {
      //system("cls");
      char s[10];
      cout << "请输入要退票的姓名:";
      cin >> s;
      uli.delete_user(s, air);
      system("pause");
    }break;
    case 8:
    {
      //system("cls");
      uli.out_user();
      system("pause");
    }break;
    }
  } while (options < 9);
}

👉👉👉源码关注【测试开发自动化】公众号,回复 “ 飞机购票系统 ” 获取。👈👈👈


相关文章
|
1月前
|
Ubuntu 数据安全/隐私保护 网络架构
Ubuntu系统的几种上网方式,Ubuntu安装后如何联网?
在Ubuntu系统中联网需要进行一些简单的设置和配置。我们需要确保我们的网络硬件已经被正确地识别和安装,我们的系统软件已经被更新,我们的网络连接已经被正确地配置。
|
11月前
|
存储 C++ UED
【实战指南】4步实现C++插件化编程,轻松实现功能定制与扩展
本文介绍了如何通过四步实现C++插件化编程,实现功能定制与扩展。主要内容包括引言、概述、需求分析、设计方案、详细设计、验证和总结。通过动态加载功能模块,实现软件的高度灵活性和可扩展性,支持快速定制和市场变化响应。具体步骤涉及配置文件构建、模块编译、动态库入口实现和主程序加载。验证部分展示了模块加载成功的日志和配置信息。总结中强调了插件化编程的优势及其在多个方面的应用。
1082 177
|
11月前
|
SQL 关系型数据库 MySQL
MySQL EXPLAIN该如何分析?
本文将详细介绍MySQL中`EXPLAIN`关键字的工作原理及结果字段解析,帮助优化查询性能。`EXPLAIN`可显示查询SQL的执行计划,其结果包括`id`、`select_type`、`table`等字段。通过具体示例和优化建议,帮助你理解和应用`EXPLAIN`,提升数据库查询效率。
564 1
|
10月前
|
运维 监控 安全
2024除了宝塔面板还有哪些好用的服务器管理软件
2024年,服务器管理软件市场百花齐放,本文介绍Websoft9、cPanel和Orion-Ops三款软件,分别在开源应用部署、Web主机管理和自动化运维方面表现出色,为用户提供更多选择。
|
Java 编译器 Serverless
Java 原生化的未来 Graal AOT 编译器
使用 Graal 编译器对 Java 程序进行 AOT 编译使其适合 Serverless 场景。
233 0
Java 原生化的未来 Graal AOT 编译器
航班管理系统(最全最细)
航班管理系统(最全最细)
【408计算机组成原理】—加减运算和溢出判断(八)
【408计算机组成原理】—加减运算和溢出判断(八)
|
存储 Linux 调度
2023Linux C/C++全栈开发知识技术合集(基础入门到高级进阶)(上)
2023Linux C/C++全栈开发知识技术合集(基础入门到高级进阶)
|
NoSQL Java 关系型数据库
基于java Swing 和 mysql实现的飞机订票系统(源码+数据库+ppt+ER图+流程图+架构说明+论文+运行视频指导)
基于java Swing 和 mysql实现的飞机订票系统(源码+数据库+ppt+ER图+流程图+架构说明+论文+运行视频指导)
1269 0
|
存储 数据采集 自然语言处理
【项目】Boost搜索引擎
【项目】Boost搜索引擎
354 0