C语言课设车票管理系统(大作业)

C语言实现火车票订票管理(附完整源码) 阅读详情
			  C语言课程设计(大作业)(车票管理系统)

一、项目简介

设计一个车票管理系统实现录入、查看班次信息,售票,退票等基本功能。设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问题,通过分析、设计、编码、调试等各环节

二、任务概述

(1)录入班次信息(信息用文件保存),可不定时地增加班次数据
(2)浏览班次信息,可显示出所有班次当前状总。
(3)查询路线:可按班次号查询 ,可按终点站查询
(4)售票和退票功能
A:当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数
B:退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数
【数据结构】
本程序用到2个结构体,方便信息的录入,浏览,查询,订票与退票,等功能的实现。

三、功能展示

在这里插入图片描述

在这里插入图片描述在这里插入图片描述在这里插入图片描述

四、思维导图

在这里插入图片描述

五、程序源码

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <dos.h>
#include <conio.h>
#include <time.h>
#define FALSE 0 
#define TRUE 1
void mainmenu(void); //主菜单函数
void InputMessage(void);//输入信息函数
void ShowMessage(void);//显示信息函数
void SearchMessage(void);//查询信息函数
void searchbynumber();//根据班次号查询函数
void searchbyaddress();//根据终点站查询的函数
void TicketManagement(void);//选择订票/退票的函数
void TicketOrder();//订票实现函数
void TicketDelete();//退票实现函数
int FLAG;//标志
struct time//时间结构体
{
int hour;
int minutes;
};
struct ticket//车票的结构体
{
int carnumber;//车次
struct time setout;
char beginpoint[20];//起点站
char endpoint[20];//终点站
float lasttime;//行车时间
int fixnumber;//额定载量
int fixednumber;//已定票的人数
}car[4];
int main()
{int FLAG=FALSE;
do{mainmenu(); }while(FLAG=FALSE);
}
void mainmenu()
{char functioNnumber;
printf(" 车票管理系统\n\n");
printf("=============================================================\n"); printf(" 1.录入班次信息\t\n");
printf(" 2.浏览班次信息\t\n");
printf(" 3.查询行车路线\t\n");
printf(" 4.售票与退票系统\t\n");
printf(" 5.退出该系统\t\n");
printf("=============================================================\n"); printf("请选择你所需要的功能:");
scanf("%s",&functioNnumber);switch(functioNnumber)
{
case '1':
{system("cls");InputMessage();
printf("\n按任意键返回主菜单\n");
getchar();
getchar();
mainmenu();
};break;
case '2':{ system("cls");ShowMessage();
printf("\n按任意键返回主菜单\n");
getchar();
getchar();
mainmenu();
};break;
case '3':
{ system("cls");SearchMessage();
printf("\n按任意键返回主菜单\n");
getchar();
getchar();
mainmenu();
};break;
case '4':
{system("cls");TicketManagement();
printf("\n按任意键返回主菜单\n");
getchar();
getchar();
mainmenu();
};break;
case '5':FLAG=TRUE;
printf("*****************************感谢使用本系统***********************************************"); exit(0);
break;
default:
{
printf("对不起你的输入有误,请确保你的输入为1-5.\n"); printf("按任意键返回主菜单\n");
getchar();
getchar(); 
mainmenu();
};
};
FLAG=FALSE;
}
void InputMessage()
{int i;
for(i=0;i<4;i++)//一次录入四班车
{printf("请输入班次号:\n");
scanf("%d",&car[i].carnumber);
printf("请输入发车时间:\n");
scanf("%d %d",&car[i].setout.hour,&car[i].setout.minutes);
printf("请输入起点站:\n");
scanf("%s",car[i].beginpoint);
printf("请输入终点站:\n");
scanf("%s",car[i].endpoint);
printf("请输入行车时间:\n");
scanf("%f",&car[i].lasttime);
printf("请输入额定载量:\n");
scanf("%d",&car[i].fixnumber);
printf("请输入已定票人数:\n");
scanf("%d",&car[i].fixednumber);
}
for(i=0;i<4;i++)
{printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已订票人数\n"); printf("%d\t%d:%d\t",car[i].carnumber,car[i].setout.hour,car[i].setout.minutes);
printf("%s\t%s\t%f\t%d\t%d\t\n",car[i].beginpoint,car[i].endpoint,car[i].lasttime,car[i].fixnumber,car[i].fixednumber);
}}
void ShowMessage()
{int i;
time_t tval;
struct tm*now;
tval=time(NULL);
now=localtime(&tval);for(i=0;i<4;i++)
{if((now->tm_hour==car[i].setout.hour&&now->tm_min<car[i].setout.minutes)||(now->tm_hour<car[i].setout.hour))
{printf("%d\t%d:%d\t",car[i].carnumber,car[i].setout.hour,car[i].setout.minutes);
printf("%s\t%s\t%f\t%d\t%d\t\n",car[i].beginpoint,car[i].endpoint,car[i].lasttime,car[i].fixnumber,car[i].fixednumber);}
else {printf("此车已出发。\n");
printf("%d\t%d:%d\t",car[i].carnumber,car[i].setout.hour,car[i].setout.minutes);
printf("%s\t%s\t%f\t%d\t%d\t\n",car[i].beginpoint,car[i].endpoint,car[i].lasttime,car[i].fixnumber,car[i].fixednumber);}
}}
void SearchMessage()
{char functionnumber;
printf("查询子菜单:\n");
printf("=========================================================================\n");
printf(" 1.按班次号查询\n");
printf(" 2.按终点站查询\n");
printf(" 3.返回主菜单\n");
printf("=========================================================================\n");
printf("请选择你需要的功能:");
scanf("%s",&functionnumber);
switch(functionnumber)
{
case '1':system("cls");searchbynumber();break;
case '2':system("cls");searchbyaddress();break;
case '3':system("cls");mainmenu();break;
default:printf("输入错误,请确保你的输入为1-3.\n");
printf("请按任意键返回查询子菜单\n");
getchar();
getchar();
SearchMessage();
}
}
void searchbynumber()
{int searchnumber;
int s;
printf("请输入你要查询的班次号:");
scanf("%d",&searchnumber);
if(searchnumber>=1&&searchnumber<=4)
{s=searchnumber-1;
printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已订票人数\n");printf("%d\t%d:%d\t",car[s].carnumber,car[s].setout.hour,car[s].setout.minutes);
printf("%s\t%s\t%f\t%d\t%d\t\n",car[s].beginpoint,car[s].endpoint,car[s].lasttime,car[s].fixnumber,car[s].fixednumber);}
else printf("对不起,没有这趟车.");
}
void searchbyaddress()
{int i;
char address[20];
printf("请输入终点站名:");
scanf("%s",address);
for(i=0;i<=4;i++)
if(strcmp(address,car[i].endpoint)==0)
{printf("%d\t%d:%d\t",car[i].carnumber,car[i].setout.hour,car[i].setout.minutes);
printf("%s\t%s\t%f\t%d\t%d\t\n",car[i].beginpoint,car[i].endpoint,car[i].lasttime,car[i].fixnumber,car[i].fixednumber);
}
}
void TicketManagement()
{
char functionnumber;
printf("==========================================================================\n");
printf(" 1.订票.\n");
printf(" 2.退票.\n");
printf(" 3.返回主菜单.\n");
printf("==========================================================================\n");
printf("请选择你需要的功能:\n");
scanf("%s",&functionnumber);
switch(functionnumber)
{case '1':system("cls");
TicketOrder();break;
case '2':system("cls");
TicketDelete();
break;
case '3':system("cls");
{mainmenu();}break;
default:
{printf("输入错误,请确保你的输入为1--3.\n");
printf("按任意键返回子菜单.\n");
getchar();getchar();
TicketManagement();
}
}
}
void TicketOrder()
{int i;
int s;
printf("请输入要订购的车票的班次:\n");
scanf("%d",&i);
s=i-1;
if(s<0||s>3)
{printf("对不起,没有这趟车,请查询后再订票.\n");
printf("按任意键返回车票管理菜单。");
getchar();
getchar();
TicketManagement();
}
else
{
time_t tval;
struct tm*now;
tval=time(NULL);
now=localtime(&tval);
if((now->tm_hour==car[s].setout.hour&&now->tm_min<car[s].setout.minutes)||(now->tm_hour<car[s].setout.hour))
{if(car[s].fixednumber<car[s].fixnumber)
{car[s].fixednumber++;
printf("你的订票成功,请按时上车,谢谢使用!\n");
}else printf("对不起,今天的这趟车的票已卖完,请明天再来,谢谢合作!\n");
}else printf("对不起,今天的这趟车已出发,请明天再来,谢谢合作!\n");
}
printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已订票人数\n");
printf("%d\t%d:%d\t",car[s].carnumber,car[s].setout.hour,car[s].setout.minutes);
printf("%s\t%s\t%f\t%d\t%d\t",car[s].beginpoint,car[s].endpoint,car[s].lasttime,car[s].fixnumber,car[s].fixednumber);
printf("按任意键返回主菜单。\n");getchar();
getchar();
}
void TicketDelete()
{int i;
int s;
printf("请输入要退购的车票的班次:\n");
scanf("%d",&i);
s=i-1;
if(s<0||s>3)
{printf("对不起,没有这趟车,请查询后再退票.\n");
printf("按任意键返回车票管理菜单。");
getchar();
getchar();
TicketManagement();
}
else
{
time_t tval;
struct tm*now;
tval=time(NULL);
now=localtime(&tval);
if((now->tm_hour==car[s].setout.hour&&now->tm_min<car[s].setout.minutes)||(now->tm_hour<car[s].setout.hour))
{if(car[s].fixednumber<car[s].fixnumber)
{car[s].fixednumber--;
printf("退票成功,谢谢使用!\n");
}else printf("对不起,今天的这趟车的票尚未卖出,无法完成退票!\n");
}else printf("对不起,今天的这趟车已出发,无法完成退票!\n");
}
printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已订票人数\n");
printf("%d\t%d:%d\t",car[s].carnumber,car[s].setout.hour,car[s].setout.minutes);
printf("%s\t%s\t%f\t%d\t%d\t",car[s].beginpoint,car[s].endpoint,car[s].lasttime,car[s].fixnumber,car[s].fixednumber);`在这里插入代码片`
printf("按任意键返回主菜单。\n");
getchar();
getchar();
}

如若不可用评论区回复(山无陵天地合都要点个赞。)

C语言课程设计——火车票订票管理系统(源代码+详细注释).zip 实现功能如下: 0:quit the system 1:Insert a train information 2:Search a train information 3:Book a train ticket 4:Modify the train information 5:Show the train information 6:save information to file 以上功能:诚实有效!!!亲测有效!!!亲测有效!!! 立即下载

相关推荐

车票管理系统(源代码)

车票管理系统 车票管理系统(源代码) 车票管理系统(源代码)

c语言车票管理系统(完整代码和文档)

作业要求 1.能够录入班次信息,可不定时增加数据。 2.浏览信息,显示所有班次状态(如当前时间大于发车时间,显示“此班已发出”)。 3.查询路线(1.班次号查询。2.终点站查询)。 4.售票功能,已订票人数小于额定人数且当前时间小于发车时间时,可订票成功,已订票人数加一。 5.退票功能,当前时间小于发车时间,可退票成功,已订票人数减一。 问题分析 本课程的学习目标是完成车票管理系统,要求实现添加数据、浏览信息、查询路线、售票、退票功能、保存数据、退出系统的实现。 首先,建立菜单分别对....

weixin_52078305的博客 1万+

UCOS-III 系统移植

UCOSIII系统移植到GD32F303详细过程 工程代码:https://github.com/jslaobing/techIot_ucosiii_porting

TechIoT - 探索物联网与嵌入式系统 2087

车票管理系统

一车站每天有n个发车班次,每个班次都有一个班次号(1、2、3···n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量。 根据以上情况设计出相应的车票管理系统,具体功能如下: 1. 录入功能 2. 浏览功能 3. 查询功能 4. 售票功能 5. 退票功能

Bit_Dong的博客 5816

Xilinx UltraScale+系列FPGA实现USB3.0 DEV 设备 部分原理图+代码分享

Zynq UltraScale+ MPSoC 系列是 Xilinx 新一代 Zynq 平台。在 FPGA 里有完整的 ARM 处理(PS),包含了四核或双核 Cortex-A53 处理器 ,处理器子系统中有DDR内存控制器等大量的外设,在FPGA中完全独立于可编程逻辑单元(PL)如果暂时没有用到PL部分,PS也能单独工作,相当于可以当成一个ARM来用了(以前的不行)。 ARM也包含USB3.0控制器,这是实现USB3.0DEV的关键,根据官方手册(ug1085)描述,USB主(Host)从(Device)

Pierre 1万+

AIGC实战:用ComfyUI和Lora微调打造专属原神角色(含完整工作流)

本文详细介绍了如何利用ComfyUI和Lora微调技术打造专属原神风格角色,涵盖从环境配置、数据集准备到工作流构建和Lora训练的全过程。通过模块化节点设计和高级控制技术,创作者可实现高度个性化的AIGC艺术创作,提升二次元角色生成的效率与质量。

weixin_29185199的博客 349

c语言大作业车票管理系统,c语言车票管理系统.docx

c语言车票管理系统课 程 设 计 报 告课程名称 C语言课程设计 课题名称 车票管理系统 专 业 自动化 班 级 1402 学 号 201401020208 姓 名 宋爱军 指导教师 陈世清 杨子华 黄哲 2014年 12 月 27 日湖南工程学院课 程 设 计 任 务 书课程名称 C语言课程设计 课 题 车票管理系统 专业班级 自动化 学生姓名 宋爱军 学 号 201...

weixin_39945178的博客 1175

向量数据库安全实战:从Embedding反推到检索越权的全链路防护

随着RAG应用在企业中的普及,向量数据库已成为知识库系统的核心组件。但许多团队对向量数据的安全认知仍停留在传统数据库的账号密码、网络隔离和磁盘加密上。事实上,向量化并非加密,而是一种有损压缩的语义映射,向量本身可以被反推模型还原出原文关键信息,形成高保真的语义泄露通道。同时,相似度检索的模糊匹配特性打破了传统行列权限模型,使得越权检索和成员推断攻击成为新的安全威胁。理解这些原理,有助于企业在数据采集、向量化、索引构建、检索查询等环节构建分层防护体系,包括脱敏、扰动、过滤下推、网关控制等手段。本文从基础概念出

weixin_29323551的博客 259

C/C++高级程序设计技术综合课程设计参考题目(84题)[2024-09-06]

高级程序设计技术综合课程设计》C/C++语言课程设计参考题目目录信息管理类 1信息管理类本次课程设计题目全部采用信息管理系统类课题。

code helper 2970

成对使用离轴抛物面反射镜的设计

成对使用离轴抛物面反射镜的设计

weixin_72050316的博客 638

Codesys入门-新建工程+任务调用+编译+调试

程序组织单元(Program Organization Unit, POU)由声明区和代码区组成,是用户程序的最小软件单元,它相当于传统编程系统中的块(Block),按功能程序组织单元(POU)可分为函数(FUN)、功能块(FB)、程序(PRG)。:Codesys采用多任务的方式来执行用户程序的“任务”,而每个“任务”分配了不同的执行周期,有些全局变量可能要在不同的POU之间被访问和修改,于是需要对全局变量进行交互同步,也是在任务的“时间对准点”进行的,实例:声明了INT类型,变量名为输入;

刺客 1万+

【杂谈分享】个人总结——软件工程 2.5 / 4

前言 很早就想以博客的形式给自己写一个总结了,想起以前写过的总结,也没多少是认真写的,真的很想反思一下自己。现在是大三寒假的2021年2月1日,大学四年的时光已经过了大半,这篇文章主要想从我的视角按照学期总结一下上大学以来的感受和经历吧,加上之前一直学业繁忙导致博客停滞,也算是一个新的起点吧。 大一上 虽然又是个很常见的开头,高考失利年级垫底,被迫就读三本,书本的知识和身边的人际圈直接一起重置了,全部都从零开始,可能是从负开始了。不知道为什么跌落到人生的低谷,感觉做什么事都很有干劲,可能是心态好,开始加倍学

葑鈊丶 444

MySQL 高可用与集群技术深度解析

高可用性(High Availability,HA)是指系统在较长时间内持续提供服务的能力,通常以系统正常运行时间占总时间的百分比(如 “99.99% 可用性”)来衡量。对于数据库系统而言,高可用性目标是通过冗余设计、故障自动检测与恢复、负载均衡等技术手段,最大限度地减少因硬件故障、软件错误、网络问题等导致的服务中断,确保数据的高可靠性和业务的连续性。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 1502

c语言实现一个车票管理系统

二.完整代码 需要完整代码的有偿私聊

wsrzsfgst的博客 2347

DirectX function “GetDeviceRemovedReason“ failed with DXGI_ERROR_DEVICE_HUNG (“The GPU will not resp

游戏报错"DXGI_ERROR_DEVICE_HUNG"的解决方案 在使用RTX 40系显卡运行FIFA 23等游戏时,可能出现DirectX报错导致游戏崩溃。这主要由于最新显卡驱动与DirectX 12的兼容性问题。解决方法包括: 降级显卡驱动版本 修改游戏配置文件,将DIRECTX_SELECT设为1 在显卡控制面板中关闭垂直同步、抗锯齿、DLSS 3等功能 调整电源模式为性能优先 这些操作可以有效解决因驱动兼容性导致的游戏崩溃问题。

猿小白的博客 3893

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

《C语言程序设计》课程设计 -- 火车票票务管理系统

设计一个火车票票务管理系统,要求实现车票查询、车票购买、车票退订等功能。1、要求设计一个火车票票务信息管理程序,实现车票查询、车票购买、车票退订和退出程序,从而完成系统所需功能;2、文件:新建一个文件存储所有车票的信息,文件traininfo.txt(示例)的内容如图2所示。2、用文件来存储所有车票信息,分别用不同的结构体来存取所有车票信息和乘客已购买车票信息;3、用下标法或指针法来实现对车票信息的存取、显示、查询、增加、删除等操作;1、结构体:定义两个结构体分别存取所有车票的信息和乘客已购买车票的信息。

博客简介 3955

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

汽⻋站⻋票管理系统C++

汽⻋站⻋票管理系统C++

todcode的博客 1502

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

C语言课设——车票管理系统

C语言课程设计

m0_62858660的博客 3412

SSM之车票管理系统(Java课设)

1、数据库设计:设计两张表,一个用于存储班次信息,另一个用于存储车票信息。确定数据库的结构,包括字段和索引的设计。使用SQL语句对数据库进行增删改查。2、班次信息管理模块:设计班次信息界面,提供增删改查班次信息的功能。实现班次信息的增删改查操作,通过SQL语句操作对数据库进行更新。需要验证输入的班次信息的合法性。3、路线查询模块:设计界面,提供按班次号、起点站、终点站查询路线的功能。

zhangshengtong的博客 1507

(万字)最详细C语言实现火车售票系统

对于我的这个火车系统,主要功能包括8项,因为全程是使用C语言实现的,所以功能较为简单,内部二级菜单里是分为了班次和用户的模块,具体看二级菜单模块,我这一版本可以说是最基础的版本。对于订票来说,我们要先让用户输入想要查询的车次名称,并且要对用户输入的车次名称进行查询处理判断车次名称是否存在,存在后我们在让用户输入个人信息,这一步也正是录入用户信息的第二种模式。改:对于用户来说,先进行输入用户的身份证号,判断其用户是否存在,若存在,则可进行选择其修改的信息,选择后进行修改即可。车次和用户的查询基本相同。

cdnio的博客 6013

汽车票管理系统C语言课程设计

汽车票管理系统 1、问题描述 汽车站每天有n个发车班次,每个班次都有一班次号(1、2、3…n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量。设计一个汽车票管理系统可以售票、退票、余票等信息进行管理。 2、功能要求 (1)数据维护:对车站、车次(包括发车时间 起点站 终点站 行车时间 额定载量)等信息增删改查操作。记录车票的销售数据数据。 (2)查询功能: 浏览班次信息,可显示出所有班次当前状总(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信

weixin_45735797的博客 2633

C语言车票管理系统

/printf(“新车次号\t发车时间\t起点站\t终点站\t行车时间\t额定载量\t已订票数\t已定座位\n”);Ticket car[50] = { {“1”,“8:00”,8,00,“福州”,“厦门”,2.0,45,7},{“4”,“10:00”,10,00,“福州”,“福清”,0.5,40,5}};{“2”,“6:30”,6,30,“福州”,“福清”,0.5,40,5},{“3”,“7:00”,7,00,“福州”,“福清”,0.5,40,3},

m0_46253659的博客 2818

【课程设计】数据库:火车票管理系统

本文主要介绍了火车票管理系统,其中包括其选题功能概述,对该系统的方案方法设计,以及过程实现等内容。由于系统的代码量较大,因此将会较为抽象地对思想进行介绍,在必要时会举出一些实例,还会附上成果展示以及安装方法。最后补充一下这次团伙作案的心得体会,也是非常宝贵的财富。

qq_66725576的博客 2万+

简单的车票管理系统(c语言)

简单的车票管理系统(c语言) 前言:(作者瞎比比,没耐心请跳过) 先给大家看一张图片

weixin_43614528的博客 1万+

火车站售票系统 C语言 课程设计 完整源码

储备知识: 这个程序属于C语言基础训练题目,所以无需太多的复杂的语法和知识;本程序包含知识有:结构体,数组,简单的条件分支语句; 附上一张程序结构图: 接下来就来看看怎么实现的吧!!! 1、定义结构体,记录车次信息; typedef struct train_infor { char number[10];//车次 char start[20];//始发地 char en...

weixin_44949228的博客 1万+

C语言实现车票管理系统

一车站每天有 n 个发车班次,每个班次都有一班次号(1、2、3...n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量。

weixin_58063872的博客 1945
上一篇: 河南省高校联盟战队课件11 CSRF(跨站请求伪造&复现与利用)
下一篇: C语言课设歌手比赛系统(大作业)
kui954
博客等级 码龄6年 1553粉丝 104原创
评论 34
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kui954

感谢各位的支持o(* ̄3 ̄)o

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值