C语言航空售票系统

以下是系统部分页面

以下是部分源码,需要源码的私信

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define max_user 100
typedef struct ft
{char name[50];//名字char start_place[50];//出发地char end_place[50];//目的地char date[50];//发车日期char flight_time[50];//运行时间int ticket_price;//票价int total;//总票数int surplus;//剩余票数ft* next;
}flight;
flight L;//创建头结点typedef struct us//用户使用
{char name[50];char id[50];char phone[20];char flight_name[50];//车次信息int flighr_price;//价钱
}User;//用户信息
User UL[max_user];//创建头结点
int count_user = 0;int choose_()//定义选择函数——后期只需要进行调用就行--不需要重复写
{while (1){printf("请输入你的选择:");int c;scanf("%d", &c);printf("\n");if (c == 1){return 1;}else if (c == 2){return 2;}else if (c == 3){return 3;}else if (c == 0){return 0;}else if (c == 4){return 4;}else if (c == 5){return 5;}else if (c == 6){return 6;}else if (c == 7){return 7;}else{printf("输入错误,请重新输入\n");}}}int InitList_flight()//初始化航班信息
{L.next = NULL;FILE* fp = fopen("./flight.txt", "r");if (!fp){printf("打开文件失败\n");return 0;}flight* p = &L;flight* q;q = (flight*)malloc(sizeof(flight));if (!q){printf("q--malloc失败\n");return 0;}while (fscanf(fp, "%s%s%s%s%s%d%d%d", q->name, q->start_place, q->end_place, q->date, q->flight_time, &q->ticket_price, &q->total, &q->surplus) != EOF){p->next = q;p = q;q = (flight*)malloc(sizeof(flight));if (!q){printf("q--malloc失败\n");return 0;}}p->next = NULL;fclose(fp);return 0;
}int Updata_flight()//用来更新航班信息
{FILE* fp = fopen("./flight.txt", "w+");if (!fp){printf("打开文件失败\n");return 0;}flight* q = L.next;while (q != NULL){fprintf(fp, "%s %s %s %s %s %d %d %d\n", q->name, q->start_place, q->end_place, q->date, q->flight_time, q->ticket_price, q->total, q->surplus);q = q->next;}fclose(fp);return 0;
}int Add_flight()
{flight* p = L.next;flight* q;q = (flight*)malloc(sizeof(flight));if (!q){printf("q--malloc失败\n");return 0;}printf("******************航班信息录入*****************\n");printf("请输入航班名称:");scanf("%s", q->name);printf("请输入出发地:");scanf("%s", q->start_place);printf("请输入目的地:");scanf("%s", q->end_place);printf("请输入发车日期:");scanf("%s", q->date);printf("请输入运行时间:");scanf("%s", q->flight_time);printf("请输入票价:");scanf("%d", &q->ticket_price);printf("请输入总票数:");scanf("%d", &q->total);q->surplus = q->total;L.next = q;q->next = p;Updata_flight();printf("添加成功\n");return 0;}int modifiction_flight()
{printf("请输入你想修改的航班名称:");char name[50];scanf("%s", name);flight* q = L.next;while (q != NULL){if (strcmp(name, q->name) == 0)//找到该航班{printf("******************信息修改******************\n");printf("请输入航班名称:");scanf("%s", q->name);printf("请输入出发地:");scanf("%s", q->start_place);printf("请输入目的地:");scanf("%s", q->end_place);printf("请输入发车日期:");scanf("%s", q->date);printf("请输入运行时间:");scanf("%s", q->flight_time);printf("请输入票价:");scanf("%d", &q->ticket_price);printf("请输入总票数:");scanf("%d", &q->total);printf("请输入剩余票数:");scanf("%d", &q->surplus);Updata_flight();printf("修改成功\n");return 0;}q = q->next;}printf("未找到该航班\n");return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/48513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JAVA 异步编程(线程安全)二

1、线程安全 线程安全是指你的代码所在的进程中有多个线程同时运行&#xff0c;而这些线程可能会同时运行这段代码&#xff0c;如果每次运行的代码结果和单线程运行的结果是一样的&#xff0c;且其他变量的值和预期的也是一样的&#xff0c;那么就是线程安全的。 一个类或者程序…

多线程初阶(二)- 线程安全问题

目录 1.观察count 原因总结 2.解决方案-synchronized关键字 &#xff08;1&#xff09;synchronized的特性 &#xff08;2&#xff09;如何正确使用 语法格式 3.死锁 &#xff08;1&#xff09;造成死锁的情况 &#xff08;2&#xff09;死锁的四个必要条件 4.Java标准…

若依二次开发

口味改造 原&#xff1a; 改造&#xff1a; 1./** 定义口味名称和口味列表的静态数据 */ 2.改变页面样式 3.定义储存当前选中的口味列表数组&#xff0c;定义改变口味名称时更新当前的口味列表 4.改变页面样式 6.格式转换 7.定义口味列表获取焦点时更新当前选中的口味列表

【DGL系列】简单理解graph.update_all和spmm的区别

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你&#xff0c;欢迎[点赞、收藏、关注]哦~ 目录 背景介绍 源码分析 小结一下 背景介绍 我们在看GNN相关的论文时候&#xff0c;都会说到邻接矩阵与特征矩阵之间是用到了spmm&#xff0c;在很久…

深入理解Linux网络(二):UDP接收内核探究

深入理解Linux网络&#xff08;二&#xff09;&#xff1a;UDP接收内核探究 一、UDP 协议处理二、recvfrom 系统调⽤实现 一、UDP 协议处理 udp 协议的处理函数是 udp_rcv。 //file: net/ipv4/udp.c int udp_rcv(struct sk_buff *skb) {return __udp4_lib_rcv(skb, &udp_…

【web】-反序列化-to_string

<?php highlight_file(__FILE__); class A{public $s;public function __destruct(){echo "hello".$this->s;}} class B{public $cmd;public function __toString(){system($this->cmd);return 1;} } unserialize($_GET[code]); __toString()当对象被当着…

《梦醒蝶飞:释放Excel函数与公式的力量》17.1使用命名范围和工作表函数

第17章&#xff1a;使用命名范围和工作表函数 17.1 命名范围的优势 在Excel中&#xff0c;使用命名范围是一个强大且灵活的功能&#xff0c;它可以极大地提高工作效率和公式的可读性。命名范围不仅使公式更容易理解&#xff0c;还减少了错误的可能性。以下将详细介绍命名范围的…

自然语言大模型介绍

1 简介 最近一直被大语言模型刷屏。本文是周末技术分享会的提纲&#xff0c;总结了一些自然语言模型相关的重要技术&#xff0c;以及各个主流公司的研究方向和进展&#xff0c;和大家共同学习。 2 Transformer 目前的大模型基本都是Transformer及其变种。本部分将介绍Transf…

24暑假算法刷题 | Day18 | LeetCode 530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先

目录 530. 二叉搜索树的最小绝对差题目描述题解 501. 二叉搜索树中的众数题目描述题解 236. 二叉树的最近公共祖先题目描述题解 530. 二叉搜索树的最小绝对差 点此跳转题目链接 题目描述 给你一个二叉搜索树的根节点 root &#xff0c;返回 树中任意两不同节点值之间的最小差…

Python 更换 pip 源详细指南

目录 前言pip 国内源临时换源方法一&#xff1a;添加参数方法二&#xff1a;设置环境变量 永久换源方法三&#xff1a;修改配置方法四&#xff1a;pip 命令修改 总结 前言 在我们使用 Python 3 时&#xff0c;pip 是一个不可或缺的工具&#xff0c;它用于安装和管理第三方库。…

在虚拟机 CentOS7 环境下安装 MySQL5.7 数据库

配置目标 在虚拟机的 Linux CentOS7 环境下安装 MySQL5.7 版数据库&#xff0c;并能从宿主机 Windows 系统连接该数据库&#xff08;默认端口&#xff1a;3306&#xff09;。 1. 准备工作 WMware 虚拟机&#xff1a;VMware Workstation 16 ProCentOS7 镜像&#xff1a;CentO…

基于密钥的身份验证(Linux-Linux)

A主机&#xff1a; 1、生成密钥对 [rootservera ~]# ssh-keygen查看公钥 注&#xff1a;id_rsa为私钥&#xff08;证书&#xff09;&#xff0c;id_rsa.pub为公钥 2、注册公钥到服务器 [rootservera ~]# ssh-copy-id root172.25.250.106 查看.ssh 3、使用密钥连接服务器 #…

【yolov8】3、yolov8 环境安装 【GPU版】

pycharm下载安装 yolov8 环境安装 【GPU版】 1、要求1.1 什么是 CUDA 和 CUDNN1.2 查看cuda版本的3种方法&#xff08;版本在10.2以上的可以忽略本章节&#xff09;&#xff1a;1.3 没有找到NIVDIA图标&#xff0c;确认是否有英伟达显卡 2、pycharm下载安装进入官网 3、yolov8…

【Android】视图与常用控件总结

文章目录 一、视图基础1.1 设置视图的宽高1.2 设置视图的间距1.3 设置视图的对齐方式1.4 总结 二、控件2.1 TextView2.1.1 设置宽高2.1.2 设置内容2.1.3 设置大小2.1.4 设置颜色 2.2 Button2.3 EditText2.4 ImageView2.5 ProgressBar2.6 AlertDialog2.7 ProgressDialog 本文主要…

JAVASE进阶day14(网络编程续TCP,日志)

TCP 三次握手 四次挥手 package com.lu.day14.tcp;import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket;public class Client {public static void main(String[] args) {try(Socket socket new Socket("192.…

哈默纳科HarmonicDrive减速机组装注意事项

在机械行业中&#xff0c;精密传动设备HarmonicDrive减速机对于维持机械运作的稳定性和高效性起着至关重要的作用。然而在减速机的组装过程中&#xff0c;任何一个细微的错误都可能导致其运转时出现振动、异响等不良现象&#xff0c;严重时甚至可能影响整机的性能。因此&#x…

【开源库】libodb库编译及使用

前言 本文介绍windows平台下libodb库的编译及使用。 文末提供libodb-2.4.0编译好的msvc2019_64版本&#xff0c;可直接跳转自取 ODB库学习相关 【开源库学习】libodb库学习&#xff08;一&#xff09; 【开源库学习】libodb库学习&#xff08;二&#xff09; 【开源库学习】…

30种图像动画特效算法(C#多线程版) - 好文要转

最近想做一个屏幕保护软件&#xff0c;需要图片切换效果&#xff0c;于是就找到这个博文&#xff0c;强烈推荐&#xff1a; https://blog.51cto.com/mengliao/473169 其中的源码包在此下载&#xff1a;https://download.csdn.net/download/lzhdim/89532212 效果如下&#xff1a…

Pycharm 安装与使用

PyCharm的安装与使用 一、什么是PyCharm PyCharm是由JetBrains开发的专业Python集成开发环境&#xff08;IDE&#xff09;&#xff0c;提供智能代码补全、语法高亮和代码导航等编辑功能。它具有强大的调试工具和内置版本控制系统支持&#xff0c;方便代码管理和协作。PyCharm…

《小程序02:云开发之增删改查》

一、前置操作 // 一定要用这个符号包含里面的${}才会生效 wx.showToast({title: 获取数据成功&#xff1a;${colorLista}, })1.1&#xff1a;初始化介绍 **1、获取数据库引用&#xff1a;**在开始使用数据库 API 进行增删改查操作之前&#xff0c;需要先获取数据库的引用 cons…