帮我用c语言写一个班车管理系统
时间: 2023-11-09 20:07:42 浏览: 25
好的,下面是一个班车管理系统的简单示例代码,该代码可以实现添加、删除、查询和修改班车信息的功能:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_BUSES 50
#define MAX_NAME_LEN 20
#define MAX_TIME_LEN 10
// 班车结构体
typedef struct {
char name[MAX_NAME_LEN]; // 班车名
char departure[MAX_TIME_LEN]; // 出发时间
char arrival[MAX_TIME_LEN]; // 到达时间
} Bus;
// 班车数组
Bus buses[MAX_BUSES];
// 班车数量
int num_buses = 0;
// 添加班车
void add_bus() {
if (num_buses >= MAX_BUSES) {
printf("班车数量已达上限!\n");
return;
}
Bus new_bus;
printf("请输入班车名:");
scanf("%s", new_bus.name);
printf("请输入出发时间:");
scanf("%s", new_bus.departure);
printf("请输入到达时间:");
scanf("%s", new_bus.arrival);
buses[num_buses] = new_bus;
num_buses++;
printf("添加成功!\n");
}
// 删除班车
void delete_bus() {
char name[MAX_NAME_LEN];
printf("请输入要删除的班车名:");
scanf("%s", name);
int i;
for (i = 0; i < num_buses; i++) {
if (strcmp(buses[i].name, name) == 0) {
int j;
for (j = i; j < num_buses - 1; j++) {
buses[j] = buses[j + 1];
}
num_buses--;
printf("删除成功!\n");
return;
}
}
printf("未找到该班车!\n");
}
// 查询班车
void query_bus() {
char name[MAX_NAME_LEN];
printf("请输入要查询的班车名:");
scanf("%s", name);
int i;
for (i = 0; i < num_buses; i++) {
if (strcmp(buses[i].name, name) == 0) {
printf("班车名:%s\n", buses[i].name);
printf("出发时间:%s\n", buses[i].departure);
printf("到达时间:%s\n", buses[i].arrival);
return;
}
}
printf("未找到该班车!\n");
}
// 修改班车
void modify_bus() {
char name[MAX_NAME_LEN];
printf("请输入要修改的班车名:");
scanf("%s", name);
int i;
for (i = 0; i < num_buses; i++) {
if (strcmp(buses[i].name, name) == 0) {
Bus new_bus;
printf("请输入新的班车名(不修改请输入-):");
scanf("%s", new_bus.name);
printf("请输入新的出发时间(不修改请输入-):");
scanf("%s", new_bus.departure);
printf("请输入新的到达时间(不修改请输入-):");
scanf("%s", new_bus.arrival);
if (strcmp(new_bus.name, "-") != 0) {
strcpy(buses[i].name, new_bus.name);
}
if (strcmp(new_bus.departure, "-") != 0) {
strcpy(buses[i].departure, new_bus.departure);
}
if (strcmp(new_bus.arrival, "-") != 0) {
strcpy(buses[i].arrival, new_bus.arrival);
}
printf("修改成功!\n");
return;
}
}
printf("未找到该班车!\n");
}
int main() {
int choice;
while (1) {
printf("请选择要进行的操作:\n");
printf("1. 添加班车\n");
printf("2. 删除班车\n");
printf("3. 查询班车\n");
printf("4. 修改班车\n");
printf("5. 退出\n");
printf("请选择:");
scanf("%d", &choice);
switch (choice) {
case 1:
add_bus();
break;
case 2:
delete_bus();
break;
case 3:
query_bus();
break;
case 4:
modify_bus();
break;
case 5:
exit(0);
default:
printf("输入有误,请重新选择!\n");
break;
}
}
return 0;
}
```
该示例代码使用了结构体和数组来管理班车信息,实现了添加、删除、查询和修改班车信息的功能。用户可以通过菜单选择要进行的操作,程序会根据用户的选择执行相应的操作。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)