首页 > 其他分享 >QT汽车客运公司售票系统

QT汽车客运公司售票系统

时间:2022-08-23 00:44:10浏览次数:92  
标签:售票 班次 QT 信息 旅客 客运公司 座位

QT汽车客运公司售票系统

以下题目皆为常见的信息管理系统,要求采用面向对象的系统分析与设计方法,用较底层的C++程序设计实现相应的功能,以达到巩固C++基础、增强实际应用能力、培养全局和系统观念。
信息管理系统的设计要点包括:首先,对设计题目进行需求分析,识别出类与对象,设计合理的类结构与程序结构实现程序功能(恰当应用教材所介绍的各种数据结构和算法);然后,编程实现良好的数据构建和维护功能,如创建、连接、增加、修改、删除、查找、浏览、统计等管理操作;最后,设计必要的界面使管理系统的各项数据操作方便、简明,数据信息的显示清晰、易读。
要求:1)用户界面统一采用QT,使用QT标准窗口、组件构建图形用户界面:对话框中要选用合适的控件布局,如按钮、编辑框、组合框、列表框、单选钮、复选钮等;用菜单、信号与槽实现人机交互操作。2)数据以文件的形式存储、使用文件类实现文件读写;3)选用合适的输出控件进行各类处理信息的输出。4)设计各种可能的数据(测试对象)对程序进行测试,观察运行结果是否正确,确保在可见范围内的测试对象都能得到正确结果。

每个同学按学号在题目1~5中选做一题。

题目1:汽车客运公司售票系统

[要求]设某客运公司每日都发售今、明、后三天的班次车票。该系统需创建和管理以下信息:1、今、明、后三天每个班次的基本信息:班次号、发车时间、终点城市、座位数量、座位数据集;2.每个班次各座位的旅客登记表:姓名、身份证号、座号。

系统功能要求如下:
1.创建和管理描述每个班次基本信息的对象;
2.创建和管理描述特定班次的座位信息的对像(售票时实现);
3.办理售票,在班次中添加旅客信息(即座位号),座位号不能重复;
4.办理退票,在班次中删除旅客信息;
5.基本查询功能;
6.数据文件读写:文件中包含所有班次信息、每个班次的座位旅客登记等数据;
7.基本信息显示:1)显示所有班次;2)显示特定班次的座位旅客登记表;
8.可选功能提升:查询指定班次的余票数和座位号等;

[设计指导]:
1)建立班次类,在类中加入表示班次的班次号、发车时间、终点城市、座位数量、座位数据集的成员变量;
2)建立座位类,在类中加入表示座位的旅客姓名、身份证号、座号成员变量;
3)在文档类中加入关于班次类的集合类成员对象,存储和管理所有班次信息;
4)在班次类中加入关于所有座位的集合类成员对象,存储和管理所有座位信息。

框架/语言

语言:C++11
框架:Qt5.12
数据库:文件系统(不允许用数据库)
(注:数据存储不可用数据库,必须自己实现文件读写)

程序界面

界面.png

功能演示

添加班次信息
添加班次信息.gif


查询班次信息.gif

删除班次信息
删除班次信息.gif

修改班次信息
修改班次信息.gif

旅客订票
旅客订票.gif

旅客退票
旅客退票.gif

查询订票信息
查询订票信息.gif

源码下载

链接:https://pan.baidu.com/s/1EYcpATVRkt0J5zPpJSdyjQ?pwd=1111
提取码:1111

标签:售票,班次,QT,信息,旅客,客运公司,座位
From: https://www.cnblogs.com/codewriter/p/16614753.html

相关文章

  • qt实现父界面中多子界面间的切换---stackWidget
    qt实现父界面中多子界面间的切换---stackWidget1.创建新项目2.项目命名3.起类名起类名之前的步骤可直接next即可。4.打开ui5.拖入控件6.添加新页该步可跳过,当......
  • qt vs C#
    其实不应该这两个进行比较?qt是framework,C#是语言。应该是语言和语言对比,框架和框架对比:C++vsC#;qtvs.net1如果只是windows,用C#/.net;如果跨平台:用C++/qt //2如......
  • Qt6.3.1三种方式远程连接阿里云服务器ECS MySQL数据库(ODBC方式、DSN方式、直连方式)
    一、ODBC方式远程连接MySQL数据库voidcreateMySQLConnByODBC(){qDebug()<<"Qt6支持的数据库驱动有:"<<QSqlDatabase::drivers();QSqlDatabasedb=QSqlDat......
  • QT——解决代码修改table表格数据后,界面内容内有刷新的问题
    ui.tableWidget_gongkuang->setItem(_index,2,newQTableWidgetItem(QString::number(_Beng_JinChuKou_ZongYaCha)));//总压差ui.tableWidget_gongkuang->vi......
  • 向QtableWidget中添加自定义widget崩溃异常: 0xC0000005
    1.问题描述想给QTableWidget添加QCheckBox,代码如下,tableWidget->setCellWidget老是崩溃(0x0F954E63(qwindows.dll)处(位于QStockView.exe中)引发的异常:0xC0000005: ),......
  • python3 使用paho-mqtt
    python版本:python3.8mqtt库:paho-mqtt1.6.1 一,消息发布创建pub.py,写入以下代码importtimefrompaho.mqttimportclientasmqtt_client#broker服务器broker......
  • vs2019 配置 qt6
    1.下载qt6我的目录C:\Qt\6.3.1\msvc2019_64\binC:\Qt\6.3.1\msvc2019_64\includeC:\Qt\6.3.1\msvc2019_64\lib 2.下载vs2019 3.vs下载qt插件扩展》管理扩展。......
  • mqtt协议
    一简述MQTT(消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上。MQTT最大优点在于,可以以极少的代码和有......
  • 关于安装Wind金融终端后,启动QT后频繁跳出WDF.dll文件注册成功窗口的问题
    安装Wind金融终端后,启动QT后频繁跳出WDF.dll文件注册成功窗口的信息。经过排查后发现,主要问题出在系统环境变量上。安装了wind金融终端后,用户系统环境变量PATH里多了两个......
  • qt程序在linux下生成core dump
    linux系统支持生成coredump,设置系统就行,通过ulimit命令查看一下系统是否支持coredump功能。通过ulimit-c,可以查看corefile大小的配置情况,如果为0,则表示系统关闭了co......