|
|
|
@ -46,6 +46,7 @@ void Menu()
|
|
|
|
timeinfo = localtime(&rawtime);
|
|
|
|
timeinfo = localtime(&rawtime);
|
|
|
|
printf("系统当前时间:%d:%d\n", timeinfo->tm_hour, timeinfo->tm_min);
|
|
|
|
printf("系统当前时间:%d:%d\n", timeinfo->tm_hour, timeinfo->tm_min);
|
|
|
|
int InputNumber;
|
|
|
|
int InputNumber;
|
|
|
|
|
|
|
|
printf("/* 当前班次信息: */\n");
|
|
|
|
printf("/* 1、购票 */\n");
|
|
|
|
printf("/* 1、购票 */\n");
|
|
|
|
printf("/* 2、退票 */\n");
|
|
|
|
printf("/* 2、退票 */\n");
|
|
|
|
printf("/* 3、查询路线 */\n");
|
|
|
|
printf("/* 3、查询路线 */\n");
|
|
|
|
@ -61,7 +62,7 @@ void Menu()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
default:
|
|
|
|
default:
|
|
|
|
system("cls");
|
|
|
|
system("cls");
|
|
|
|
printf("输入错误,请输入正确的选项!!\n");
|
|
|
|
printf("请输入正确选项!!\n");
|
|
|
|
system("pause");
|
|
|
|
system("pause");
|
|
|
|
Menu();
|
|
|
|
Menu();
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
@ -135,19 +136,15 @@ void Save() //
|
|
|
|
FILE *fp1, *fp2;
|
|
|
|
FILE *fp1, *fp2;
|
|
|
|
if ((fp1 = fopen("sql.txt", "wb")) == NULL)
|
|
|
|
if ((fp1 = fopen("sql.txt", "wb")) == NULL)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
printf("车次数据文件不存在,请先录入数据\n");
|
|
|
|
printf("车次数据文件不存在\n");
|
|
|
|
system("pause");
|
|
|
|
exit(0);
|
|
|
|
Menu();
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if ((fp2 = fopen("num.txt", "wb")) == NULL)
|
|
|
|
if ((fp2 = fopen("num.txt", "wb")) == NULL)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
printf("车次序号数据文件不存在,请先录入数据\n");
|
|
|
|
printf("车次序号数据文件不存在\n");
|
|
|
|
system("pause");
|
|
|
|
exit(0);
|
|
|
|
Menu();
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
printf("数据保存中,请稍后\n");
|
|
|
|
printf("数据保存中,请稍后\n");
|
|
|
|
fp2 = fopen("num.txt", "wb");
|
|
|
|
|
|
|
|
fp1 = fopen("sql.txt", "wb");
|
|
|
|
|
|
|
|
fwrite(&class_num, sizeof(int), 1, fp2); //写入文件信息
|
|
|
|
fwrite(&class_num, sizeof(int), 1, fp2); //写入文件信息
|
|
|
|
fwrite(records, sizeof(CLASS), class_num, fp1);
|
|
|
|
fwrite(records, sizeof(CLASS), class_num, fp1);
|
|
|
|
fclose(fp1);
|
|
|
|
fclose(fp1);
|
|
|
|
@ -156,35 +153,29 @@ void Save() //
|
|
|
|
void Load() //加载数据文件
|
|
|
|
void Load() //加载数据文件
|
|
|
|
{
|
|
|
|
{
|
|
|
|
FILE *fp1, *fp2;
|
|
|
|
FILE *fp1, *fp2;
|
|
|
|
if ((fp1 = fopen("sql.txt", "rb")) == NULL)
|
|
|
|
if ((fp1 = fopen("sql.txt", "rb+")) == NULL)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
system("cls");
|
|
|
|
system("cls");
|
|
|
|
printf("车次数据文件不存在,请先录入数据\n");
|
|
|
|
printf("车次数据文件不存在\n");
|
|
|
|
system("pause");
|
|
|
|
system("pause");
|
|
|
|
Menu();
|
|
|
|
exit(0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if ((fp2 = fopen("num.txt", "rb")) == NULL)
|
|
|
|
if ((fp2 = fopen("num.txt", "rb+")) == NULL)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
system("cls");
|
|
|
|
system("cls");
|
|
|
|
printf("车次序号数据文件不存在,请先录入数据\n");
|
|
|
|
printf("车次序号数据文件不存在\n");
|
|
|
|
system("pause");
|
|
|
|
system("pause");
|
|
|
|
Menu();
|
|
|
|
exit(0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
fp1 = fopen("sql.txt", "rb");
|
|
|
|
|
|
|
|
fp2 = fopen("num.txt", "rb");
|
|
|
|
|
|
|
|
fread(&class_num, sizeof(int), 1, fp2); //读入信息
|
|
|
|
fread(&class_num, sizeof(int), 1, fp2); //读入信息
|
|
|
|
if (sizeof(CLASS) > sizeof(class_num))
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
fread(records, sizeof(CLASS), class_num, fp1); //读入信息
|
|
|
|
fread(records, sizeof(CLASS), class_num, fp1); //读入信息
|
|
|
|
}
|
|
|
|
|
|
|
|
fclose(fp1);
|
|
|
|
fclose(fp1);
|
|
|
|
fclose(fp2);
|
|
|
|
fclose(fp2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
int Judge(int i) //判断时间是否超出
|
|
|
|
int Judge(int i) //判断时间是否超出
|
|
|
|
{
|
|
|
|
{
|
|
|
|
struct tm *local; //时间结构体
|
|
|
|
struct tm *local; //时间结构体
|
|
|
|
time_t t;
|
|
|
|
time_t t; //把当前时间给t
|
|
|
|
time(&t);
|
|
|
|
|
|
|
|
local = localtime(&t); //获取当前系统时间
|
|
|
|
local = localtime(&t); //获取当前系统时间
|
|
|
|
if (local->tm_hour < atoi(records[i].hour) || local->tm_hour == atoi(records[i].hour) && local->tm_min < atoi(records[i].min))
|
|
|
|
if (local->tm_hour < atoi(records[i].hour) || local->tm_hour == atoi(records[i].hour) && local->tm_min < atoi(records[i].min))
|
|
|
|
//atoi函数将字符串转换成一个整数值
|
|
|
|
//atoi函数将字符串转换成一个整数值
|
|
|
|
@ -213,6 +204,7 @@ int FindCarByNum(char s1[]) //
|
|
|
|
void Import()
|
|
|
|
void Import()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int i = 0, j = 5, h;
|
|
|
|
int i = 0, j = 5, h;
|
|
|
|
|
|
|
|
char s[5];
|
|
|
|
FILE *fp;
|
|
|
|
FILE *fp;
|
|
|
|
system("cls");
|
|
|
|
system("cls");
|
|
|
|
if ((fp = fopen("num.txt", "rb")) != NULL)
|
|
|
|
if ((fp = fopen("num.txt", "rb")) != NULL)
|
|
|
|
@ -271,7 +263,6 @@ void Buy()
|
|
|
|
system("pause");
|
|
|
|
system("pause");
|
|
|
|
Query();
|
|
|
|
Query();
|
|
|
|
printf("请输入要订票的班次(若无请输入0):\n");
|
|
|
|
printf("请输入要订票的班次(若无请输入0):\n");
|
|
|
|
num[0] = '\0';
|
|
|
|
|
|
|
|
scanf("%s", num);
|
|
|
|
scanf("%s", num);
|
|
|
|
for (i = 0; i < class_num; i++)
|
|
|
|
for (i = 0; i < class_num; i++)
|
|
|
|
if (strcmp(num, records[i].number) == 0)
|
|
|
|
if (strcmp(num, records[i].number) == 0)
|
|
|
|
|