校车管理系统
学习C语言中相关知识,设计一个校车管理系统,包含以下主要功能(不限于以下)
实现对校车信息的管理,包括添加相关信息(车牌,座位数,司机姓名,联系方式等等),查询校车信息,删除校车信息(校车报废等原因);
实现小车站点的管理,包括添加站点信息,查询站点信息,删除站点信息等;
实现通过文件保存校车信息;
实现每个校区对应不同校车的分配管理(例如,青山校区需要两辆校车,洪山校区需要一辆校车,黄家湖校区需要三辆校车);
实现校车的预约功能,校内学生和职工可以通过输入规划第二天需要多少校车,实现校车的合理排班,校车司机适当的轮休;(提示,可以给每辆车或者司机增加一个出车状态标志)
题目要求:
必须使用C语言编写,使用C++或者其他高级语言者课程设计为不合格。
使用简单的控制台程序,可以修改背景颜色等,且不需要图形编程。
仅使用编译系统自带的库函数,不允许使用sqlite.dll等动态链接库。
本人承接java、C语言、c++、python、数据结构等课程设计,私聊源码和数据库,联系微信:15813406574
需要此项目的全部代码者微信私聊,永久在线
接下来给大家展示一下效果和重要代码展示:
部分代码展示(如果有需要可以加微信:15813406574):
1 int write_bus()
2 {
3 FILE* fp;
4 if ((fp = fopen("校车信息.txt", "wb+")) == NULL) //wb+新建一个二进制文件,已存在的文件将内容清空,允许读写
5 {
6 puts("Fail to open file!");
7 exit(0);
8 }
9
10 BusList p = b->next;
11 while (p)
12 {
13 fwrite(p, sizeof(BusNode), 1, fp);
14 p = p->next;
15 }
16 fclose(fp);//关闭文件,数据流才存入磁盘
17 printf("校车信息写入完毕!
");
18 return 1;
19 }
20
21 ////////////从文档中读取校车结构体/////////
22 int read_bus()
23 {
24 FILE* fp;
25 if ((fp = fopen("校车信息.txt", "rb+")) == NULL)//rb+打开一个二进制文件,文件必须存在,允许读写
26 {
27 puts("Fail to open file!");
28 exit(0);
29 }
30 BusList p = b;
31 while (!feof(fp))//调试发现feof会多读一次,所以加上fread返回值判断
32 {
33 BusNode tmp;
34 if (fread(&tmp, sizeof(BusNode), 1, fp))
35 {
36 BusListInsert(&b, tmp.data);//判断fscanf的返回数值,它指示成功读取的数据
37 }
38 }
39 fclose(fp);
40 printf("校车信息读取完毕!
");
41 return 1;
42 }
43
44 ////////////把站点结构体数据存入文档中
45 int write_site()
46 {
47 FILE* fp;
48 if ((fp = fopen("站点信息.txt", "wb+")) == NULL) //wb+新建一个二进制文件,已存在的文件将内容清空,允许读写
49 {
50 puts("Fail to open file!");
51 exit(0);
52 }
53
54 SiteList p = s->next;
55 while (p)
56 {
57 fwrite(p, sizeof(SiteNode), 1, fp);
58 p = p->next;
59 }
60 fclose(fp);//关闭文件,数据流才存入磁盘
61 printf("站点信息写入完毕!
");
62 return 1;
63 }
64
65 ////////////从文档中读取站点结构体/////////
66 int read_site()
67 {
68 FILE* fp;
69 if ((fp = fopen("站点信息.txt", "rb+")) == NULL)
70 {
71 puts("Fail to open file!");
72 exit(0);
73 }
74 SiteList p = s;
75 int i = 1;
76 while (!feof(fp))//调试发现feof会多读一次,所以加上fread返回值判断
77 {
78 SiteNode tmp;
79 if (fread(&tmp, sizeof(SiteNode), 1, fp))