zoukankan      html  css  js  c++  java
  • C语言课程设计:校车管理系统(附源码)

    校车管理系统
    学习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))
    80         {
    81             SiteListInsert(&s, tmp.date,i);//判断fscanf的返回数值,它指示成功读取的数据
    82             i++; SiteNum++;
    83         }
    84     }
    85     fclose(fp);
    86     printf("站点信息读取完毕!
    "); printf("
    "); printf("
    ");
    87     return 1;
    88 }
    复制代码
  • 相关阅读:
    Azure School女神相邀,把每分钟都过的更充实
    Java、Node.js、PHP还是.Net? 无论你选谁,我都能教你一招!
    一样的Java,不一样的HDInsight大数据开发体验
    第五代微软小冰 | 你有一个来自人工智能的电话待接听
    2017“编程之美”终章:AI之战勇者为王
    大数据freestyle: 共享单车轨迹数据助力城市合理规划自行车道
    语音识别技术里程碑:错误率降至5.1%,超过专业速记员
    wait和waitpid
    Linux网络编程wait()和waitpid()的讲解
    如何测试Linux 中的wait函数能不能等待子进程的子进程?
  • 原文地址:https://www.cnblogs.com/crh666/p/15374271.html
Copyright © 2011-2022 走看看