《公交路线查询》.docx
- 文档编号:10251502
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:41
- 大小:2.07MB
《公交路线查询》.docx
《《公交路线查询》.docx》由会员分享,可在线阅读,更多相关《《公交路线查询》.docx(41页珍藏版)》请在冰豆网上搜索。
《公交路线查询》
某某学院
《C#程序设计》课程设计
题目:
《公交路线查询》
机电
学院
计算机科学与技术
专业
学号:
XXXXXX
学生姓名:
XX
班级:
XXXX
成绩:
2012年1月
需求分析:
1.功能需求
本系统主要是对公交线路的线路进行查询的管理的系统。
本系统需要有管理者动态更新公交线路的最新信息,并且能将所有信息从数据库中添加、修改和删除,利用报表功能将数据库中的若干项目的数据显示出来并且利用触发器将数据库中的若干信息的数值计算出来。
数据要求有自动更新功能,显示最新的结果。
还需要对普通用户有简单方便的站点查询、线路查询、换车查询等。
、
2.数据需求
对于用户信息需要有所选择的查询方式建立不同的表,对于不同的表之间有关联的可以用视图。
对于管理者需要管理者的用户名和密码。
3.性能需求
本系统稳定性比较好、可靠性较高,只要操作正确就可以达到用户操作的目的要求,其次本系统响应速度较快,只要对系统中的数据进行操作,操作后的结果就将在界面中显示出来。
概要设计:
设计思想:
随着公路规模的不断扩大,公交数量的急剧增加,有关公交管理的各种信息量也在不断成倍增长。
面对庞大的信息量,就需要有公交信息管理系统来提公交房管理工作的效率。
通过这样的系统,我们可以做到信息的规范管理和快速查询,从而减少了管理方面的工作量。
目前,我国各省市的公交查询工作还未实现数字化。
整个过程既浪费能源又浪费资源。
最后导致浪费时间,无法按时到达目的地。
因此,开发一个能够对最新的公交线路进行查询的信息平台就显得尤其重要。
所开发的系统将在一定程度上能够克服以上的种种缺点,实现各项工作在线完成,为乘客提供一个完全公开、开放、完善的管理平台,放便了乘客的出行,大大节省了乘客的宝贵时间。
通过这样的系统,我们可以做到信息的规范管理和快速查询,实现了公交信息管理的系统化、规范化和自动化,这样不仅减少了管理工作量,还提高了查询效率,降低了查询成本。
实现模块:
1.选择模块:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
namespacebus
{
publicpartialclassForm3:
Form
{
publicForm3()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(radioButton1.Checked)
{
Form1f=newForm1();
f.Show();
this.Hide();
}
if(radioButton2.Checked)
{
Form2f=newForm2();
f.Show();
this.Hide();
}
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
Application.Exit();
}
privatevoidradioButton1_CheckedChanged(objectsender,EventArgse)
{
}
}
}
2.查询模块:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
usingSystem.IO;
namespacebus
{
publicpartialclassForm1:
Form
{
publicForm1()
{
InitializeComponent();
}
publicintn=0;
privatevoidbutton1_Click(objectsender,EventArgse)
{
string[]bus=newstring[10];
FileStreamfs=newFileStream("C:
\\DocumentsandSettings\\Administrator\\桌面\\buses\\bus\\MyFile.txt",FileMode.Open,FileAccess.Read);
StreamReadersr=newStreamReader(fs);
for(inti=0;i { bus[i]=sr.ReadLine(); if(bus[i]==null) { n++; } } sr.Close(); fs.Close(); if(++n==bus.Length) { MessageBox.Show("文件内容为空,请按读入文件按钮! ! "); } else { stringpath=""; if(textBox1.Text==""&&textBox2.Text=="") { MessageBox.Show("起始站台和目的站台不能为空! ! "); } elseif(textBox1.Text=="") { MessageBox.Show("起始站台不能为空! ! "); } elseif(textBox2.Text=="") { MessageBox.Show("目的站台不能为空! ! "); } for(inti=0;i { stringaa=bus[i]; if(aa! =null) { if(aa.IndexOf(textBox1.Text)>0&&aa.IndexOf(textBox2.Text)>0) { string[]b=aa.Split(','); path+=b[0]; } if(path! ="") { textBox3.Text=path; } else { textBox3.Text="没有这路公交车,请选择查询2,查询交通路线! ! "; } } } } } publicstringret(stringa,stringb) { stringret=""; string[]a1=a.Split(','); string[]b1=b.Split(','); for(inti=0;i { for(intj=0;j { if(a1[i]==b1[j]) { if(ret=="") { ret=a1[i]; } else { ret+=","+a1[i]; } } } } returnret; } privatevoidbutton3_Click(objectsender,EventArgse) { string[]bus=newstring[10]; FileStreamfs=newFileStream("C: \\DocumentsandSettings\\Administrator\\桌面\\buses\\bus\\MyFile.txt",FileMode.Open,FileAccess.Read); StreamReadersr=newStreamReader(fs); for(inti=0;i { bus[i]=sr.ReadLine(); } sr.Close(); fs.Close(); stringpath=""; if(textBox1.Text==""&&textBox2.Text=="") { MessageBox.Show("起始站台和目的站台不能为空! ! "); } elseif(textBox1.Text=="") { MessageBox.Show("起始站台不能为空! ! "); } elseif(textBox2.Text=="") { MessageBox.Show("目的站台不能为空! ! "); } for(inti=0;i { stringaa=bus[i]; if(aa.IndexOf(textBox1.Text)>=0) { for(intj=0;j { if(i! =j) { stringbb=bus[j]; if(bb.IndexOf(textBox2.Text)>=0) { for(ints=0;s { stringcc=bus[s]; if(i! =j&&j! =s&&s! =i) { if(ret(aa,cc)! =""&&ret(cc,bb)! ="") { path+=aa.Substring(0,4)+"到"+ret(aa,cc)+"转"+cc.Substring(0,4)+"到"+ret(cc,bb)+"转"+bb.Substring(0,4)+"到"+textBox2.Text; } if(path! ="") { textBox3.Text=path; } else { textBox3.Text="转两次车不能到达,请选择打的! ! "; } } } } } } } } } privatevoidbutton2_Click(objectsender,EventArgse) { string[]bus=newstring[10]; FileStreamfs=newFileStream("C: \\DocumentsandSettings\\Administrator\\桌面\\buses\\bus\\MyFile.txt",FileMode.Open,FileAccess.Read); StreamReadersr=newStreamReader(fs); for(inti=0;i { bus[i]=sr.ReadLine(); } sr.Close(); fs.Close(); stringpath=""; if(textBox1.Text==""&&textBox2.Text=="") { MessageBox.Show("起始站台和目的站台不能为空! ! "); } elseif(textBox1.Text=="") { MessageBox.Show("起始站台不能为空! ! "); } elseif(textBox2.Text=="") { MessageBox.Show("目的站台不能为空! ! "); } for(inti=0;i { stringaa=bus[i]; if(aa.IndexOf(textBox1.Text)>=0) { for(intj=0;j { if(i! =j) { stringbb=bus[j]; if(bb.IndexOf(textBox2.Text)>=0) { if(ret(aa,bb)! ="") { path+=aa.Substring(0,4)+"到"+ret(aa,bb)+'转'+bb.Substring(0,4)+"到"+textBox2.Text; } if(path! ="") { textBox3.Text=path; } else { textBox3.Text="转一次车不能到达,请选择查询2,查询交通路线! ! "; } } } } } } } privatevoidbutton4_Click(objectsender,EventArgse) { FileStreamfs=newFileStream("C: \\DocumentsandSettings\\Administrator\\桌面\\buses\\bus\\MyFile.txt",FileMode.Open,FileAccess.ReadWrite); StreamWritersw=newStreamWriter(fs); string[]bus=newstring[10]; bus[0]="#001,火车站,吉祥桥,胜利门,五爱北路,梁溪大桥,运河饭店,开源大桥,蠡桥,北桥,稻香新村,中桥,景亭苑,震泽新村,旺山路,蠡湖大桥,蠡湖公园,蠡湖广场,蠡园,宝界桥,宝界村,鼋头渚"; bus[1]="#002,梅园公交总站,梅园,开原寺,大渲,公益路,荣巷,张巷,第九人民医院,上里东,河埒口"; bus[2]="#003,梓旺新村,东方名苑,东北塘,锦旺苑,夏氏物流,东风桥木材市场,金龙纸品,向阳,广丰,丁村"; bus[3]="#004,胡埭停车场,胡埭路,钱胡路,张舍,刘塘村,文良路,历村,洋溪桥,江南皮件厂"; bus[4]="#005,无锡动物园,西山,东山,江原医院,无锡艺校,开源寺,梅园,梅园公交总站"; bus[5]="#006,钱桥,杨树岸,惠钱路,惠泉花园,石门路,严家鹏,烈士陵园,凤翔南路,惠畅里,惠山,龙光路,威孚公司,五爱广场,西门,复兴路"; bus[6]="#007,锡山医院,锡沪路,市人力资源,长庆路,东林书院,检察院,三凤桥,二院,朝阳广场,文化宫,体育公园,健康桥,梁溪大桥"; bus[7]="#008,火车站,胜利门,商业大厦,八百伴,解放东路,风雷新村,金海里,叙康里,"; bus[8]="#009,河埒口,四院,青山湾,青山支路,锡惠公园,吟苑公园,五爱广场,五爱北路,胜利门,吉祥桥,火车站"; bus[9]="#010,中桥,景亭苑,震泽新村,旺山路,蠡湖大桥,蠡湖公园,蠡湖广场,蠡园,宝界桥,宝界村,鼋头渚"; for(inti=0;i { sw.WriteLine(bus[i]); } sw.Close(); fs.Close(); } privatevoidbutton5_Click(objectsender,EventArgse) { Form3f=newForm3(); f.Show(); this.Hide(); } privatevoidbutton6_Click(objectsender,EventArgse) { Application.Exit(); } } } 3.修改模块: usingSystem; usingSystem.Collections.Generic; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Text; usingSystem.Windows.Forms; usingSystem.IO; namespacebus { publicpartialclassForm2: Form { publicForm2() { InitializeComponent(); } privatevoidbutton1_Click(objectsender,EventArgse) { string[]bus=newstring[10]; FileStreamfs=newFileStream("C: \\DocumentsandSettings\\Administrator\\桌面\\buses\\bus\\MyFile.txt",FileMode.Open,FileAccess.Read); StreamReadersr=newStreamReader(fs); for(inti=0;i { bus[i]=sr.ReadLine(); } sr.Close(); fs.Close(); for(inti=0;i { stringaa=bus[i]; string[]a1=aa.Split(','); if(a1[0]==textBox1.Text) { textBox3.Text=bus[i]; break; } else { MessageBox.Show("输入的线路不正确! ! "); break; } } } privatevoidbutton2_Click(objectsender,EventArgse) { Form3f=newForm3(); f.Show(); this.Hide(); } privatevoidbutton3_Click(objectsender,EventArgse) { Application.Exit(); } privatevoidbutton4_Click(objectsender,EventArgse) { string[]bus=newstring[10]; FileStreamfs=newFileStream("C: \\DocumentsandSettings\\Administrator\\桌面\\buses\\bus\\MyFile.txt",FileMode.Open,FileAccess.Read); StreamReadersr=newStreamReader(fs); for(inti=0;i { bus[i]=sr.ReadLine(); } sr.Close(); fs.Close(); for(inti=0;i { stringaa=bus[i]; string[]a1=aa.Split(','); if(textBox1.Text==a1[0]) { bus[i]=textBox3.Text; } } FileStreamfst=newFileStream("C: \\DocumentsandSettings\\Administrator\\桌面\\buses\\bus\\MyFile.txt",FileMode.Create,FileAccess.ReadWrite); StreamWritersw=newStreamWriter(fst); for(inti=0;i { sw.WriteLine(bus[i]); } sw.Close(); fst.Close(); } } } 详细设计: (1)设计说明: 当打开软件时首先选择所需功能,代码如下: usingSystem; usingSystem.Collections.Generic; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Text; usingSystem.Windows.Forms; namespacebus { publicpartialclassForm3: Form { publicForm3() { InitializeComponent(); } privatevoidbutton1_Click(objectsender,EventArgse) { if(radioButton1.Checked) { Form1f=newForm1(); f.Show(); this.Hide(); } if(radioButton2.Checked) { Form2f=newForm2(); f.Show(); this.Hide(); } } privatevoidbutton2_Click(objectsender,EventArgse) { Application.Exit(); } privatevoidradioButton1_CheckedChanged(objectsender,EventArgse) { } } } 当选择查询时,首先写入文件,然后分别有转一次车查询和转两次车查询,代码如下: usingSystem; usingSystem.Collections.Generic; usingSystem.ComponentModel; usingSystem.Data; usingSystem.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 公交路线查询 公交路线 查询