班车信息管理系统(共32页).doc
《班车信息管理系统(共32页).doc》由会员分享,可在线阅读,更多相关《班车信息管理系统(共32页).doc(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上*实践教学* 兰州理工大学计算机与通信学院2014年春季学期 C程序设计 课程设计题 目: 班车信息管理系统 专业班级: 计算机科学与技术6班姓 名: 苏志飞 学 号: 指导教师: 唐建新 成 绩:_ 专心-专注-专业摘 要随着信息技术在管理上越来越广泛的的应用,管理系统的实施在技术上已逐步成熟,管理系统是一个不断发展的学科,任何部门,服务系统的展开都离不开信息技术管理。鉴于此我们开发了一个采用语言编辑的基本班车信息管理查询服务系统,该系统具备了 1录入班车相关信息。2查询信息(按班车的发车时间及其车号查找)。并输出班车当前所在信息。3信息的输出,显示所有班车信息,满
2、足乘客的需求。4删除班车信息,使班车服务流畅化。5状态转换。运用c语言,编写程序使得复杂的交通变得井然有序。就现在的交通设施,我们开展了此次c语言课程设计,从多方面提升自己的编译能力,为以后的专业开展奠定基础。关键词:信息管理,车票,班车目 录一、 前言传统的班车信息管理存在着许多的弊端,比如计算方面的误差、整个系统的管理和班车信息的查询等。伴随着信息时代的来临,信息处理器计算机的应用于班车信息的日常管理为班车管理的现代化带来了从未有过的动力和机遇,采用计算机管理信息系统已成为班车信息管理科学化和现代化的重要标志给班车服务行业带来了明显的经济效益和社会效益。利用班车信息系统管理整个运行的过程,
3、可以节省大量的时间和精力,有助于及时了解各个环节中信息的变更,有利于提高工作人员的工作效率。在此背景下,本文论述了班车管理系统的设计和实现。我们学习程序设计课程的目的掌握设计程序的思路,学习会用计算机语言编写程序,以实现所需要处理的任务。要正确处理算法与语法的关系,算法是程序的核心、是灵魂,语法是外壳、是工具。不应把学习重点放在语法规则上,语法是重要的,不掌握语法规则就无法编写出正确的程序。一定要把重点放在解题的思路上,通过思考,和大量的阅读,来构造一个完整的程序。因为:重要的是学会编程,而不是背语法。其次,主要是学习程序设计的方法,进行程序设计的基本训练,学生应该把精力放在最基本,最常用的内
4、容上,学好基本功,在基础上加强自己。二、需求分析2.1选题背景:随着计算机的普及,信息产业的发展,现在计算机已经被各个领域使用。传统班车信息管理存在着许多的弊端,比如计算方面的误差、整个系统的管理和班车信息的查询等。但是现在班车管理已经信息化、自动化,通过一些编程语言来实现,再经过实践来验证,最后就有一个完整的班车信息管理系统。它包括班车信息的录入、浏览和查询。2.2编写目的:通过对用户需求进行调查分析,做出需求分析文档作为项目设计的基本准则要求,以及作为系统分析员进行系统分析和测试人员进行测试时的手册2.3需求概述:设计一个班车信息管理系统,使之能提供以下功能:1) 录入班车信息并保存,包括
5、发车时间、班车车号、班车型号、车票价格2) 浏览全部车次信息,并按输入顺序显示3) 查询班车信息,可按车号和发车时间4) 班车信息的删除5)班车状态的转换6)班车信息管理系统的初始化 2.4需求说明:班车信息包括车号、发车时间、班车型号、车票价格录入的班车信息要求用文件形式保存,并可以对其进行浏览、查询、等操作;班车信息的显式要求有一定的规范格式所设计的系统应以菜单方式工作,应为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并要求在此过程中能够尽可能的兼容用户使用过程中的异常情况三、总体设计根据需求分析,本人按照结构化程序设计的原则将整个系统划分若干个功能模块。 系统各子模块的设计如图
6、1所示。班车信息管理系统班车 信息输出班车信息录入班车 信息查询系统初始化班车 状态转换班车 信息删除退出图1 班车信息管理系统功能模块图四、详细设计1、数据定义结构体类型typedef struct char number10;/*班车车号*/ char time20; /*发车时间*/ char model20; /*班车型号*/ int price; /*车票价格*/ int state; /*班车状态*/mbus;typedef struct mbus bus1000; int count; mstop; mstop stop;指针变量 FILE *fp; /*定义1文件型指针变量,指
7、针名叫fp*/*fp指向file类型结构体的指针*/ fp=fopen(stop.txt,wt); /*以写的方式打开stop*/ fwrite(&stop.count,sizeof(int),1,fp); fwrite(stop.bus,sizeof(stop.bus1),stop.count+1,fp); fclose(fp); /*关闭文件*/ 2、 主要算法流程图录入函数流程 startvoid luru() /*车辆信息录入while(a!=0)printf(录入班车信息n) 输入有误 end查询函数流程图 start满足指令 endprintf(tt2发车时间查询n); print
8、f(tt1 型号查询n)对不起,输入有误显示所有班车信息startvoid shanchu()班车信息删除流程图满足要求请输入要删除的班车型号和发车时间 输入有误已经修改的班车信息end start状态转换函数流程图 void setstate()printf(请输入班车车号,转换班车的状态: );是否转换 转换后的班车信息 原有的班车信息end 班车信息输出五、编码只写步骤和思路,源代码见光盘(附录:6号New Roman, 行距固定10磅)。void main() int i; char ch=1; FILE *fp; /*定义1文件型指针变量,指针名叫fp*/*fp指向file类型结构体
9、的指针*/ if(fp=fopen(stop.txt,rt)=NULL) /*以写的方式打开stop*/ stop.count=0;else fread(&stop.count,sizeof(int),1,fp); fread(stop.bus,sizeof(stop.bus1),stop.count+1,fp); fclose(fp);/*关闭文件*/ printf(nnnttt欢迎使用班车管理系统!nt); /*班车管理系统欢迎界面*/ printf(操作说明:n); printf( 1.数据输入完成后按 Enter 键确认.n); printf( 2.班车信息当中车费价格,车号只能是整数
10、.n); printf( 3.班车信息状态栏中,1表示未发车,0表示已发车.n); printf( 4.对于录入的班车信息的状态,系统默认为1n); printf( 5.请严格按照要求操作.n); printf(nnttt请按任意键继续.); getch(); while(ch!=0) printf(nnnnn); printf(ttttt 班车管理系统n); /*班车管理系统菜单选项*/ for(i=0;i80;i+ ) printf(*); printf(n); printf(tt1-班车信息录入n); printf(tt2-班车信息查询n); printf(tt3-班车信息输出n); p
11、rintf(tt4-删除班车信息n); printf(tt5-系统初始化n); printf(tt6-班车状态转换n); printf(tt0-退出n); /*班车管理系统各个选项及其后继步骤*/ scanf(%c,&ch); switch(ch) case 1: luru(); break; case 2: search(); break; case 3: print(); break; case 4: shanchu(); break; case 5: initiate(); break; case 6: setstate(); break; default: break; printf(
12、nnnnnnnnntttt谢谢使用!); /*班车管理系统关闭状态*/ getch(); void save() FILE *fp; /*定义1文件型指针变量,指针名叫fp*/*fp指向file类型结构体的指针*/ fp=fopen(stop.txt,wt); /*以写的方式打开stop*/ fwrite(&stop.count,sizeof(int),1,fp); fwrite(stop.bus,sizeof(stop.bus1),stop.count+1,fp); fclose(fp); /*关闭文件*/ void luru() /*车辆信息录入*/ while(a!=0) stop.co
13、unt+; printf(录入班车信息n); printf(请输入班车车号: ); scanf(%s,stop.busstop.count.number); printf(请输入型号: ); scanf(%s,stop.busstop.count.time); printf(请输入发车时间: ); scanf(%s,stop.busstop.count.model); printf(请输入车费标价: ); fflush(stdin); scanf(%d,&stop.busstop.count.price); stop.busstop.count.state=1; printf(退出请按 0 ,
14、继续请按 1 :); /*班车信息录入结束*/ scanf(%d,&a); save();void search() /*车辆信息查询*/ int a=0; printf(-班车信息查询-n); printf(tt1- 型号查询n); printf(tt2-发车时间查询n); printf(请选择查询方式: ); scanf(%d,&a); switch (a) case 1: search_by_time(); break; case 2: search_by_model(); break; default: break; void search_by_time() int n=1,i; c
15、har a20; printf(请输入你要查找班车的型号: ); scanf(%s,a); printf(车号 t型号 t发车时间 t车费 t状态n); for(i=1;i=stop.count;i+) if(strcmp(a,stop.busi.time)=0) printf(%stt%stt%stt%dtt%dn,stop.busi.number,stop.busi.time,stop.busi.model,stop.busi.price,stop.busi.state); /* 显示车号 型号 发车时间 车费 车辆状态*/ n=0; if(n=1) /*如果没有数据显示对不起.*/ pr
16、intf(对不起,没有相应信息 ); getch();void search_by_model()char a20; int n=1,i; printf(请输入你要查找班车的发车时间: ); scanf(%s,a); printf(车号t 型号t 发车时间t 价格t 状态n); for(i=1;i=stop.count;i+) if(strcmp(a,stop.busi.model)=0) printf(%stt%stt%stt%dtt%dn,stop.busi.number,stop.busi.time,stop.busi.model,stop.busi.price,stop.busi.st
17、ate); /* 显示车号 型号 发车时间 车费 车辆状态*/ n=0; if(n=1) /*如果没有数据显示对不起.*/ printf(对不起,没有相应信息 ); getch();void print() int i,n; printf(车号t 型号t 发车时间t 价格t 状态n); printf(%stt%stt%stt%dtt%dn,stop.busi.number,stop.busi.time,stop.busi.model,stop.busi.price,stop.busi.state); /* 显示车号 型号 发车时间 车费 车辆状态*/ getch(); void shanchu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 班车 信息管理 系统 32
限制150内