c语言飞机票订票系统用到文件的读写
时间: 2023-08-21 09:02:37 浏览: 199
c语言 飞机订票系统
5星 · 资源好评率100%
在C语言的飞机票订票系统中,可以使用文件读写来保存航班信息、订单信息等数据。具体实现方法如下:
1.保存航班信息到文件
```c
//打开文件
FILE *fp = fopen("flights.txt", "w");
if(fp == NULL) {
printf("文件打开失败!\n");
return;
}
//将航班信息写入文件
for(int i = 0; i < count; i++) {
Flight f = flights[i];
fprintf(fp, "%s|%s|%s|%s|%d|%d\n", f.number, f.start, f.dest, f.time, f.price, f.remain);
}
//关闭文件
fclose(fp);
```
2.从文件读取航班信息
```c
//打开文件
FILE *fp = fopen("flights.txt", "r");
if(fp == NULL) {
printf("文件打开失败!\n");
return;
}
//读取航班信息
count = 0;
while(!feof(fp)) {
Flight f;
fscanf(fp, "%[^|]|%[^|]|%[^|]|%[^|]|%d|%d\n", f.number, f.start, f.dest, f.time, &f.price, &f.remain);
flights[count++] = f;
}
//关闭文件
fclose(fp);
```
3.保存订单信息到文件
```c
//打开文件
FILE *fp = fopen("orders.txt", "a");
if(fp == NULL) {
printf("文件打开失败!\n");
return;
}
//将订单信息写入文件
fprintf(fp, "%s|%s|%s|%s|%d|%d|%s|%s|%s\n", u.flight.number, u.flight.start, u.flight.dest, u.flight.time, u.flight.price, num, u.name, u.id, u.phone);
//关闭文件
fclose(fp);
```
4.从文件读取订单信息
```c
//打开文件
FILE *fp = fopen("orders.txt", "r");
if(fp == NULL) {
printf("文件打开失败!\n");
return;
}
//读取订单信息
while(!feof(fp)) {
User u;
fscanf(fp, "%[^|]|%[^|]|%[^|]|%[^|]|%d|%d|%[^|]|%[^|]|%s\n", u.flight.number, u.flight.start, u.flight.dest, u.flight.time, &u.flight.price, &u.num, u.name, u.id, u.phone);
printf("%s\t%s\t%s\t%s\t%d\t%d\t%s\t%s\t%s\n", u.flight.number, u.flight.start, u.flight.dest, u.flight.time, u.flight.price, u.num, u.name, u.id, u.phone);
}
//关闭文件
fclose(fp);
```
需要注意的是,文件读写涉及到文件操作,要注意文件打开、关闭等操作,以及文件路径的设置。同时也要确保文件中的数据与程序处理的数据格式一致。
阅读全文