公交公司管理课程设计说明书.docx

上传人:牧羊曲112 文档编号:1852289 上传时间:2022-12-21 格式:DOCX 页数:29 大小:385.21KB
返回 下载 相关 举报
公交公司管理课程设计说明书.docx_第1页
第1页 / 共29页
公交公司管理课程设计说明书.docx_第2页
第2页 / 共29页
公交公司管理课程设计说明书.docx_第3页
第3页 / 共29页
公交公司管理课程设计说明书.docx_第4页
第4页 / 共29页
公交公司管理课程设计说明书.docx_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《公交公司管理课程设计说明书.docx》由会员分享,可在线阅读,更多相关《公交公司管理课程设计说明书.docx(29页珍藏版)》请在三一办公上搜索。

1、*实践教学*兰州理工大学2011年秋季学期面向对象语言课程设计 题 目: 公交公司管理系统 专业班级: 计算机科学与技术四班姓 名: 学 号: 指导教师: 成 绩: _目 录摘要.3序 言4正 文51.问题描述52.系统总体设计53.详细设计74.程序调试与测试75.结果分析126.软件安装和使用说明书12设 计 总 结13参考文献14致 谢14摘 要C+是一门编程语言,也是一个平台,具有跨平台优势,具有简单、面向对象、分布式、解释执行、健壮、安全、体系结构中立的、可移植、高性能、多线程、以及多态性的特点。本公交公司管理系统提供用户注册和登录功能,使用户登录成功后能查询到所需的信息,同时可以进

2、行简单的输入、查询信息等并提供搜索功能。该程序显示GUI界面并运用部分java辅助。关键词:C+;公交公司管理;信息管理。序 言随着计算机的普及和计算机技术的飞速发展,人们越来越多的利用计算机解决实际问题。城市公共交通系统是一个复杂的系统, 公交生产的三要素(人、车、路) 处于开放的大系统中, 运营作业具有点多、线长、面广和运营条件复杂等特点, 传统的处理信息方法给整个系统的管理带来了很多困难, 难以适应现代化管理的需要. 因此, 将公共交通管理与计算机技术有机结合起来, 研制出一个信息收集、储存、传输、识别、提取、控制和利用的综合信息管理系统已势在必行。本程序是一个图形界面的简单的c+公交公

3、司管理系统,整个系统从操作简便、界面友好、灵活、实用、安全的角度出发,使用人员能快捷简单地进行操作,即时准确地获得需要的公交信息。可以进行简单的注册,登录,登录成功后可以查询到需要的信息,并提供查找和搜索功能。正 文1. 问题描述该公交公司管理系统具体功能要求是要能够显示GUI用户界面,用c+语言设计并以JDK为开发平台能实现公交公司的管理而且界面要用图形界面实现。2. 系统总体设计首先明确该实验设计的要求实现的基本功能,其次设计布局,使用布局管理器设计布局,安排每个组件的位置,并设置菜单和菜单项。程序流程图如下图:开始搜索事件处理模块用户登录注册模块 提交公交信息模块结束 图一用户名密码检查

4、Y恭喜你注册成功把数据写入File(Student.dat);N对不起此用户名已注册结束输入关键字遍历查找Y 显示找到的信息N 反馈出错信息给用户结束 图二 3. 详细设计一、程序中主要内容:1) 运营管理:2) 票务管理:3) 物资管理:4) 车辆管理:二、程序功能介绍:功能1,包括对车辆的购置、运营技术状况。功能2,可输入公交车的信息。功能3,可通过搜索找到已有的数据信息。功能4,驾驶员信息查询。功能5,管理员信息注册。4. 程序调试与测试调试显示公交管理系统GUI界面:1.运行界面2.用户登陆3.用户注册4.添加公交信息5.搜索公交信息 5. 结果分析公交公司管理系统就是管理公交信息及查

5、找所需的公交信息等,同时可以根据客运量和票价得到该路公家的营收额。此公交公司管理系统提供了提交、查找 和用户登录功能,对于本系统,我们还可以扩充很多功能 比如说营收排序、数据写入数据库、菜单的事件处理等都是可扩展的功能。同时进行关键字搜索的时候,结果太多,没有分类,如果数据量足够大的话,会让使用者感觉很烦乱,不能很快的找到所需求的信息,这是本程序的不足之处。在此本人由于时间的关系和知识的欠缺没有实现,希望有能力的同学能够实现程序。6. 软件安装和使用说明书该程序采用结构化的程序设计方法编写而成,安装非常简单,只需在windows系统下安装该程序的可执行文件就可以让有一定计算机基础的人员,根据程

6、序的提示信息开始操作。本程序充分考虑到了操作者的技术要求,旨在降级程序的操作要求达到人人可操作程度。所以,程序中给出了相当多的操作提示,以便减轻用户的操作难度,以使广大用户易于接受。设 计 总 结在做公交公司管理系统的过程中遇到了不少的问题,同时也有不小的收获。看相关的书,模仿书上的例题,查找一些类的方法的运用,慢慢去学着怎么灵活的使用面板来布局,来添加组件。像事件处理这一块确实出了不少难题。例如用户的登录和注册,首先怎么检查用户名是否注册,注册了怎么做错误处理等等,还有怎么把公交车数据存入数组,再把数组显示到右边的表格里,这些都比较头疼。还通过网络如百度、CSDN上查找解决的方法及周围同学的

7、帮助。这次课设实践给了我们一个既动手又动脑,独立实践的机会但其中又包含着共同合作,对我们能力提升很有帮助。参考文献1初小璐完全掌握SQL Server 2000 M 机械工业出版社,20042Jeraod V.Post.数据库管理系统(英文版.第三版)美清华大学出版社,2006.13张海藩.软件工程导论M.北京:清华大学出版社,1998.14谢希仁.计算机网络(第二版)M.北京:电子工业出版社,2003.6 5戴志诚,赵国峰.JSP信息化系统建设案例M.北京:人民邮电出版社,2006.126成晓静,毕靖.网页设计三剑客完全学习手册M.北京:中国电力出版社,2004.117赵强.精通JSP编程M

8、.北京:电子工业出版社,2006.38萨师煊,王珊.数据库系统概论M.北京:高等教育出版社,2002.29张海藩,李劲,谢兆阳.SQL Server2000数据库设计与系统管理M.北京:清华大学出版社,2000.910刘禾,蔡锋.Web数据库假设技巧M.北京:科技技术出版社,1999.411徐建波. Internet与Web设计教程M.北京:中国矿业大学出版社,2000.1212于书举,许向众.数据库设计与开发教程M.北京:电子工业出版社,2003.1113安海忠,李文斌,林旭新.商业网站建设与管理M.北京:人民交通出版社,2006.814T.Umeda and S.Hagiwara.web-

9、based database for EPR centers in semiconductorsJ.BPhysica B:Condensed Matter,3(7),249-252,2006.315Yih-Ling Hedley,Muhammad Younas.Sampling,information extraction and summarisation of Hidden Web databasesJ.Data & Knowledge Engineering,In Press,Uncorrected Proof,Available online 10 March 2006.2致 谢经过一

10、个学期的C+学习,对C+编程有了一定的认识,在做这个课程设计的时候,刚开始感觉自己无从下手,不知道该怎么开始,很茫然。最终利用网络资源和查阅图书馆的书籍,在老师和同学的指导和讨论下,经过一段时间终于完成了这个设计,从中学到了很多书本知识不能体现的东西,也通过这次的程序设计感觉到自己平时对于编程实际操作的贫乏没有把书本上知识真正的掌握牢固。附录:源代码#include stdafx.h#include busl.h#include buslDlg.h#includeBuswr.h#includeModifybus.h#includeBussearch.h#includeSitewr.h#incl

11、udeDmsite.h#includeDlsite.h#includeDesign.h#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;void CBuslDlg:OnBuswr() /公交车基本信息录入单击事件函数Buswr bus;bus.DoModal();void CBuslDlg:OnBusmo() /公交车基本信息修改Modifybus busmo;busmo.DoModal();void CBuslDlg:OnBuslo()/公交车基本信息查询Bussearch sea

12、;sea.DoModal();void CBuslDlg:OnDlo() /站点信息查询ShellExecute(NULL,open,f:站点基本信息.txt,NULL,NULL,SW_SHOW);void CBuslDlg:OnDmo()/站点信息修改ShellExecute(NULL,open,f:站点基本信息.txt,NULL,NULL,SW_SHOW);void CBuslDlg:OnDwr()/站点信息的录入Sitewr te;te.DoModal(); void CBuslDlg:OnFshe() /方案设计Design de;de.DoModal();void CBuslDlg:

13、OnExit() /退出应用程序if(MessageBox(确定要退出应用程序吗?,系统提示!,MB_OKCANCEL|MB_ICONQUESTION)!=IDOK)return;exit(0);if (e.getSource() = login) String NCmp = Tname.getText();String PCmp = Tpassword.getText();boolean flag = false;for (int i = 0; i Usersname.length; i+) if (NCmp.equals(Usersnamei) flag = true;break;if (

14、flag) JOptionPane.showMessageDialog(null, 对不起此用户名已经注册!, 错误, JOptionPane.ERROR_MESSAGE); else int index = 0;JOptionPane.showMessageDialog(null, 注册成功!, 消息, JOptionPane.INFORMATION_MESSAGE);for (int i = 0; i Usersname.length; i+) if (Usersnamei = null) Usersnamei = NCmp;index = i;break;Userspasswordind

15、ex = PCmp;try file1=new File(Transit.dat); FileWriter fw=new FileWriter(file1,true); fw.write(用户名+tt+密码+n); fw.write(NCmp+tt+PCmp+n); fw.close();catch (IOException e1) e1.printStackTrace(); if(flag) if(e.getSource() =Certain)Float Frevenue;String revenue;String name=Tname.getText(); String number=TN

16、umber.getText(); int Intnumber=Integer.parseInt(number);/这个需要判断输入的值是否为空,并且输入的是否是数字 String driver=TDriver.getText();/这个需要判断输入的值是否为空 String price=TPrice.getText();float Fprice=Float.parseFloat(price);/这个需要判断输入的值是否为空,并且输入的是否是数字 String source=TSource.getText();/这个需要判断输入的值是否为空 String destination=TDestina

17、tion.getText();/这个需要判断输入的值是否为空 String amount=TAmount.getText(); int Intamount=Integer.parseInt(amount);/这个需要判断输入的值是否为空,并且输入的是否是数字Frevenue=Fprice*Intamount;revenue=Float.toString(Frevenue);int len1=len;int len2 = 0;TransitInformationlen1len2+=number;TransitInformationlen1len2+=driver;TransitInformati

18、onlen1len2+=price;TransitInformationlen1len2+=source;TransitInformationlen1len2+=destination;TransitInformationlen1len2+=amount;TransitInformationlen1len2+=revenue; len +;table.updateUI();if (e.getSource() = Sbutton) BaseTransit.setText();int i, j;boolean brk = false;String seach = Stextfield.getTex

19、t();for (i = 0; i TransitInformation.length; i+) for (j = 0; j TransitInformationi.length; j+) if (seach.equals(TransitInformationij) brk = true;BaseTransit.append(TransitBase0 + :);BaseTransit.append(TransitInformationi0);BaseTransit.append(n);BaseTransit.append(TransitBase1 + :);BaseTransit.append

20、(TransitInformationi1);BaseTransit.append(n);BaseTransit.append(TransitBase2 + :);BaseTransit.append(TransitInformationi2);BaseTransit.append(n);BaseTransit.append(TransitBase3 + :);BaseTransit.append(TransitInformationi3);BaseTransit.append(n);BaseTransit.append(TransitBase4 + :);BaseTransit.append

21、(TransitInformationi4);BaseTransit.append(n);BaseTransit.append(TransitBase5 + :);BaseTransit.append(TransitInformationi5);BaseTransit.append(n);BaseTransit.append(n); BaseTransit.append(TransitBase6 + :);BaseTransit.append(TransitInformationi6);BaseTransit.append(n);BaseTransit.append(n);if (!brk)

22、JOptionPane.showMessageDialog(null, 对不起您的搜索条件不正确!, 错误,JOptionPane.ERROR_MESSAGE); public static void main(String args)Frame FTransit=new Transit();FTransit.setSize(600,400);FTransit.setTitle(公交公司管理系统);FTransit.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit

23、(0); );FTransit.setVisible(true);void CBuslDlg:OnInternet()ShellExecute(0, open, NULL, NULL, SW_SHOWNORMAL);void Buswr:OnWr() UpdateData(TRUE);/用于将屏幕上控件中的数据交换到变量中。int m=0,n=0;if(m_Pcheci=0|m_Pnextt=0|m_Ptotalt=0)MessageBox(请填写完整!,提示!,MB_OK|MB_ICONEXCLAMATION);elseif(m_Pstim);file.WriteString(m_sitet

24、wo);file.WriteString(-);file.WriteString(m_sitethr);file.WriteString(-);file.WriteString(m_sitethu);file.WriteString(-);file.WriteString(m_sitefiv);file.WriteString(-);file.WriteString(m_sitesix);file.WriteString( 前后两站里程各为(单位:米);file.WriteString(m_deson);file.WriteString( );file.WriteString(m_destw)

25、;file.WriteString( );file.WriteString(m_desthr);file.WriteString( );file.WriteString(m_desthu);file.WriteString( );file.WriteString(m_desfi);file.WriteString(n);file.Close();m_comcheci=,m_siteone=,m_sitetwo=,m_sitethr=,m_sitethu=,m_sitefiv=,m_sitesix=,m_deson=,m_destw=,m_desthr=,m_desthu=,m_desfi=;U

26、pdateData(FALSE);void Design:OnFsok() UpdateData(TRUE);CString str,temp,strtemp;int flg=0,flag=0,flag1=0,flag2=0;/int pose1=0,pose2=0;if(m_Psheend=|m_Pshesta=)MessageBox(请输入完整!,提示);CStdioFile file;file.Open(f:站点基本信息.txt,CFile:modeReadWrite|CFile:typeText); /只读 if(!file)MessageBox(打开文件错误,提示!,MB_OK);e

27、lsewhile(file.ReadString(temp)if(temp.Find(m_Pshesta)!=-1&temp.Find(m_Psheend)!=-1)/&m_Psheend!=&m_Pshesta!=可以加上去str=您可以乘坐+temp.Left(3)+车次,从+m_Pshesta+到+m_Psheend;elseif(temp.Find(m_Pshesta)!=-1&temp.Find(m_Psheend)=-1)str=您可以乘坐+temp.Left(3)+车次;flag1=1;if(temp.Find(m_Psheend)!=-1&temp.Find(m_Pshesta)=-1)str+=再乘坐+temp.Left(3)+车次(您需要转车);flag2=1;m_Presult=str;/*if(flag1=0)MessageBox(不存在该始发站!,提示!);*/if(flag2=0)MessageBox(不存在该终点站!,提示!);file.Close();UpdateData(FALSE);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号