【c/c++飞机订票系统】c/c++飞机订票系统

阅读: 评论:0

【c/c++飞机订票系统】c/c++飞机订票系统

【c/c++飞机订票系统】c/c++飞机订票系统

1.项目背景

为了免去在窗口排队买票的麻烦,飞机订票系统应运而生。用户通过该系统可以快速,详细地了解需要的信息,并提供了一个很好的购票渠道。

2.设计目的 

如何合理设计不同数据结构来存储航班信息、旅客信息、订票信息等不同数据
如何合理设计不同的链表节点来封装不同的实体信息;
如何合理设计多个链表结构来管理不同实体的若干记录;
进一步强化学习链表的创建、插入、查找、修改和删除等基本操作;
进一步强化学习内存中链表数据和外部文件之间的存取操作;
如何利用time.h中的函数获取系统日期时间

3.项目功能需求

添加机票信息
能够添加机票的航班号、起飞降落时间、目的地、出发地、票价、可定的剩余票数以及折扣信息等。
查询可预订的机票信息
能够根据用户的具体需求即航班号或目的地,查询可定的机票并输出相应的机票信息,支持标准格式输出多条机票信息。
预定机票并输入个人信息
查询机票后,根据用户的选择,决定是否订票,并输入信息。
修改机票信息
能修改已经存在的机票信息。
退票
根据目的地和最早出发时间,系统可以推荐合适的机票信息
显示当前时间

系统的功能结构图

 

功能模块介绍

添加模块
可以连续添加多条航班信息,包括航班号、出发城市、到达城市、出发时间、到达时间、票价、折扣信息、票数
查找模块
用户在订票之前需要先查询满足自己出行需要的机票信息,本功能模块支持按照“航班号”查询和按照“目的地”查询两种方式
订票模块
输入目的地信息,可以输出所有满足该目的地的航班信息,并提示用户是否订票
修改模块
输入需要修改的航班号,可以修改航班信息
退票模块
能支持用户退票操作

显示模块
显示模块可以展示所有航班信息,供旅客查看选择
推荐模块
推荐模块的功能是根据旅客输入的目的地信息和最早出发时间,向旅客推荐满足要求的航班信息,帮助旅客快速搜索符合时间要求的航班
保存模块
能将航班信息和旅客订票信息保存到磁盘文件中,再次启动系统时,则可以自动读取文件中的航班信息和旅客订票信息
时间模块
支持实时查询当前时间功能

主函数

功能设计
主函数用于实现主菜单的显示,并响应用户对菜单项的选择。
本系统的主函数主要两大功能:保存信息和菜单选择。
某个功能执行完之后,还能按任意键自动回到主菜单,便于用户进行其他操作。

主界面显示如下

添加模块
功能设计
用于对飞机班次,始发地,目的地,起飞时间,降落时间,票价,折扣以及所剩票数等信息的输入与保存。
添加模块流程图

查找模块
功能设计
用于根据输入的飞机班次或到达城市来进行查找,了解航班的信息。
提供了两种查询方式:一是根据飞机班次查询,二是根据到达城市查询。

按照目的地查找机票界面

还有一些功能不再演示 如上面所述,功能齐全

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
// 定义结构体存储机票信息
struct Ticket {//联系博主获取:lxt123lxp456
};// 声明全局变量用于存储机票信息
struct Ticket tickets[50];
int totalTickets = 0;// 添加机票信息
void addTicket() {tickets[i].departureTime, tickets[i].arrivalTime,tickets[i].destination, tickets[i].departureCity,tickets[i].price, tickets[i].availableSeats, tickets[i].discount);}}} else if (searchType == 2) {printf("请输入目的地: ");scanf("%s", searchDestination);printf("查询结果:n");printf("航班号t起飞时间t降落时间t目的地tt出发地tt票价t可预订票数t折扣信息n");for (int i = 0; i < totalTickets; i++) {if (strcmp(tickets[i].destination, searchDestination) == 0) {printf("%st%stt%stt%stt%stt%.2ft%dtt%.2fn",tickets[i].flightNumber, tickets[i].departureTime, tickets[i].arrivalTime,tickets[i].destination, tickets[i].departureCity,tickets[i].price, tickets[i].availableSeats, tickets[i].discount);}}} else {printf("无效的查询类型!n");}
}// 预定机票并输入个人信息//联系博主获取:lxt123lxp456// 修改机票信息
void modifyTicket() {printf("n修改机票信息n");char searchFlightNumber[20];int selectedTicket = -1;printf("请输入需要修改的机票航班号: ");scanf("%s", searchFlightNumber);for (int i = 0; i < totalTickets; i++) {if (strcmp(tickets[i].flightNumber, searchFlightNumber) == 0) {selectedTicket = i;break;}}if (selectedTicket == -1) {printf("未找到匹配的机票!n");return;}struct Ticket ticket = tickets[selectedTicket];printf("请输入新的票价: ");scanf("%f", &ticket.price);printf("请输入新的剩余票数: ");scanf("%d", &ticket.availableSeats);tickets[selectedTicket] = ticket;printf("机票信息修改成功!n");
}// 退票
void cancelTicket() {printf("n退票n");char searchDestination[50];char earliestDepartureTime[20];int selectedTicket = -1;printf("请输入目的地: ");scanf("%s", searchDestination);printf("请输入最早出发时间: ");scanf("%s", earliestDepartureTime);for (int i = 0; i < totalTickets; i++) {if (strcmp(tickets[i].destination, searchDestination) == 0 &&strcmp(tickets[i].departureTime, earliestDepartureTime) >= 0) {selectedTicket = i;break;}}if (selectedTicket == -1) {printf("未找到匹配的退票机票!n");return;}struct Ticket ticket = tickets[selectedTicket];// 增加可预订票数ticket.availableSeats++;tickets[selectedTicket] = ticket;printf("退票成功!n");printf("退票信息:n");printf("航班号: %sn", ticket.flightNumber);printf("出发地: %sn", ticket.departureCity);printf("目的地: %sn", ticket.destination);printf("票价: %.2fn", ticket.price);printf("剩余票数: %dn", ticket.availableSeats);
}// 推荐合适的机票信息// 显示当前时间
void displayCurrentTime() {// 获取当前系统时间并进行格式化输出time_t current_time;char* c_time_string;current_time = time(NULL);c_time_string = ctime(&current_time);printf("n当前时间: %s", c_time_string);
}int main() {int choice;do {printf("n---------------------n");printf("机票预订系统n");printf("---------------------n");printf("1. 添加机票信息n");printf("2. 查询机票信息n");printf("3. 预订机票并输入个人信息n");printf("4. 修改机票信息n");printf("5. 退票n");printf("6. 推荐合适的机票信息n");printf("7. 显示当前时间n");printf("0. 退出系统n");printf("---------------------n");printf("请选择操作: ");scanf("%d", &choice);printf("---------------------n");//联系博主获取} while (choice != 0);return 0;
}

需要全部代码可以联系我:lxt123lxp456  制作不易 伸手党勿扰

本文发布于:2024-01-29 12:36:58,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170650302015333.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:订票   飞机   系统
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23