你现在是一个c语言专家,请帮我用c语言写一个函式,设计一个建议公交车查询系统,通过该系统实现对公交车运行信息的管 理,信息包括:公交车路线(公交车路线(3位编码,如N10表示10路车,第一位为大写字母,后两位为数字),列车起点站,终点站,经过的各个站点,发车时间,休息时间,票价等。 基本功能要求: 用户管理(操作用户数据文件)。 1.高级用户(管理者):具有所有功能,同时可以添加用户、删除用户。创 建新用户后,将普通用户信息存储到文件中。 2.普通用户(查询者):可执行查询功能。 信息录入:将公交车信息录入。 信息显示:显示基本信息(按照一定算法对数据排序后显示)。 信息修改:检索某个路线公交车,对基本信息进行修改。 信息删除:能够删除基本信息。 信息查询:按照编号可以进行公交车信息查询。 信息保存 退出系统 公交车不低于15个路线 高级要求: 查询到的信息能够保存到文件中,可以根据出发时间进行排序并保存到 文件中,信息的录入等通过界面操作。
时间: 2023-06-02 14:07:55 浏览: 93
用C语言做的公交查询系统
好,我会帮您设计一个建议公交车查询系统的 C 语言函数。
首先,需要定义一个结构体来存储公交车信息:
```c
struct Bus {
char route[4]; // 公交车路线,如"N10"
char start[20]; // 起点站名
char end[20]; // 终点站名
char route_info[100]; // 经过的站点信息
char departure_time[10]; // 发车时间
char rest_time[10]; // 休息时间
int fare; // 票价
};
```
接着,需要定义一些函数来实现基本功能要求:
```c
// 初始化用户管理文件,返回文件指针
FILE *init_user_file();
// 管理员添加用户信息,将用户名和密码存储到用户管理文件中
void add_user();
// 管理员删除用户信息,将用户名和密码从用户管理文件中删除
void delete_user();
// 查询用户是否存在于用户管理文件中,若存在则返回 true,否则返回 false
bool has_user(char *username, char *password);
// 查询公交车信息,并排序后显示
void display_bus_info(struct Bus buses[], int count);
// 录入公交车信息
void add_bus_info(struct Bus buses[], int *count);
// 修改公交车信息
void modify_bus_info(struct Bus buses[], int count);
// 删除公交车信息
void delete_bus_info(struct Bus buses[], int *count);
// 按照路线编号查询公交车信息,并返回该公交车的索引值,若该编号的公交车不存在则返回 -1
int search_bus_info_by_route(struct Bus buses[], int count, char *route);
// 保存公交车信息到文件中,文件名为 "bus_info.dat"
void save_bus_info_to_file(struct Bus buses[], int count);
// 从文件中读取公交车信息并存储到数组中
int load_bus_info_from_file(struct Bus buses[]);
```
高级要求需要增加用户界面,实现信息保存到文件中,并根据出发时间排序、录入修改信息等,具体实现过程可按照需要进行编写。
以上是我的建议,希望能对您有所帮助。
阅读全文