《软件设计基础-C》课程设计报告书.doc_第1页
《软件设计基础-C》课程设计报告书.doc_第2页
《软件设计基础-C》课程设计报告书.doc_第3页
《软件设计基础-C》课程设计报告书.doc_第4页
《软件设计基础-C》课程设计报告书.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河北联合大学2012-2013第2学期 软件设计基础-C+课程设计报告设计名称: 公路收费程序 姓 名: 孙少臣 学 号: 201214670204 专业班级: 金属材料专业轧2班 学 院: 冶金与能源学院 设计时间: 2013年5月10日至2013年7月1日 设计地点: 机房 指导教师评语:教师评定:自评成绩: 指导教师签字: 年 月 日软件设计基础-C+课程设计报告 第 18 页,共 18 页目 录1.课程设计目的2.课程设计任务与要求3.课程设计说明书4.课程设计成果5.程序调试过程6.设计问题的不足和改进方案7.课程设计心得8.参考文献1课程设计目的软件设计基础-C+课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C+的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握C+这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。2课程设计任务与要求:要求:本次课程设计利用软件设计基础-C+课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。要求:1、对系统进行功能需求分析2、设计合理的数据结构和系统框架3、编程简练,程序功能齐全,能正确运行4、说明书、流程图要清楚5、课题完成后必须按要求提交课程设计报告任务:(1)用模块化设计思想来完成程序的设计(2)要求各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp文件中,要求使用头文件;3课程设计说明书概要设计模块说明: 在我设计的程序中一共包括四个模块,分别是统计小客车数和收费小计模块、统计客车的车辆数和收费小计模块、统计公汽的车辆数和收费小计模块、收费处理模块。这四个模块中统计小客车数和收费小计模块、统计客车的车辆数和收费小计模块、统计公汽的车辆数和收费小计模块都是独立分开作为子函数的,另外一个包含着switch语句,通过switch语句,把其他三大模块联系起来,同时,为了实现多次继续输入数据,就在obj.dispiay()后加个switch语句来达到继续输入数据的效果。 模块结构图: 开始统计小客车数和收费小计统计客车的车辆数和收费小计统计公汽的车辆数和收费小计各类车型的车辆数和收费小计,合计总的收费金额 详细设计 开始总体流程图: .:Unitcar=10; Unittruck=25; Unitbus=10;Car=0, carfee=0Truck=0,truckfee=0Bus=0,busfee=0输入3输入2输入1Void buss() bus+; busfee+=unitbus;Void trucks() truck+; truckfee+=unittruck;Void cars() car+; carfee+=unitcar;输出:小客车:car 辆 收费小计: carfee卡车 :truck 辆 收费小计: truckfee公汽 :bus 辆 收费小计 :busfee收费合计 :carfee+truckfee+busfee各功能模块流程图: 1 Void cars() car+; carfee+=unitcar;统计小客车数和收费小计 2Void trucks() truck+; truckfee+=unittruck;统计客车的车辆数和收费小计 3Void buss() bus+; busfee+=unitbus;统计公汽的车辆数和收费小计 4输出:小客车:car 辆 收费小计: carfee卡车 :truck 辆 收费小计: truckfee公汽 :bus 辆 收费小计 :busfee收费合计 :carfee+truckfee+busfee各类车型的车辆数和收费小计,合计总的收费金额4课程设计成果#include const int unitcar=10; const int unittruck=25;const int unitbus=15; class Free int car,carfee; int truck,truckfee;int bus,busfee;public:Free() car=carfee=truck=truckfee=bus=busfee=0;void cars() car+;carfee+=unitcar;void trucks()truck+;truckfee+=unittruck;void buss()bus+;busfee+=unitbus;void process()int no,n=0;cout 1:小客车 2:卡车 3:公汽 0:退出 endl; while (1) cout +n no; switch (no) case 0:break; case 1:cars();break; case 2:trucks();break; case 3:buss();break; default:cout 车型输入错误! endl; if(no=0) break;void display()cout 收费统计如下: endl;cout 小客车: car 辆 收费小计: carfee endl;cout 卡车: truck 辆 收费小计: truckfee endl;cout 公汽: bus 辆 收费小计: busfee endl;cout 收费合计: carfee+truckfee+busfee endl;void main ()Free obj; int i;cess(); obj.display();while (1)cout是否继续输入? 1:是 0:否 i;switch(i) case 1: cess();break;case 0: break;default: cout输入错误! endl; obj.display(); if(i=0) break; 开始界面为:输入数据后界面:停止输入后最后结果界面:5.程序调试过程1先进行人工检查,即静态检查。在写好一个程序以后,不要匆匆忙忙上机,而应对纸面上的程序进行人工检查。2在人工检查无误后,才可以上机调试。通过上机发现错误称动态检查。在编译时给出语法错误的信息,可以根据提示的信息具体找出程序中出错之处并改正之。 如果系统提示的出错信息多,应当从上到下一一改正。有时显示出一大片出错信息往往使人感到问题严重,无从下手。其实可能只有一二个错误。3在改正语法错误后,程序经过连接就得到可执行的目标程序。运行程序,输入程序所需数据,就可得到运行结果。应当对运行结果作分析。看它是否符合要求。有的初学者看到运行结果就认为没问题了,不作认真分析,这是危险的。 4 运行结果不对,大多属于逻辑错误。对这类错误往往需要仔细检查和分析才能发现。 问题 : 1、编译时就会对所有含该变量的语句发出出错信息 2、显示出一大片出错信息 3、一段程序调试多次都有一个错误,在包含stalfsa.h头文件出现问题 原因: 1、 对使用的变量未定义 2、少了“”或多了“”,书写语句时忘记写“;”或是全角的“;”了 3、本计算机不存在这个文件,只能找另一个iostream,h替换6.设计问题的不足和改进方案 (1)对自己的程序自我评价虽然我设计的这段程序可以基本完成题目要求,但还有待完美改善,总的来说,优缺点都多少有点,这段程序可以方便的记录各类车型的车辆数和收费情况,但其功能比较少,使用面比较小,需进一步改善。(2)对课题提出更加完善的改进方案 对于本课题,如果能更全面的记录车辆信息,如记录车牌号、车型、驾驶人信息等,与生活中的公路收费更接近。7.课程设计心得第一次接触c+这个东西真的让人感觉到有许多的陌生感,虽然一开始觉得很难,但学着学着就发现它越来越有意思。我想学了这么久,课程设计是最能展示出学习成果的。 在这次设计中,一次次的失败让我感到十分的无力,但是我还是坚持做了下来,尽管仍然不完美,但是我想我尽力了,这次设计让人遗憾的是收费界面和管理界面没能分开。在这次课程设计中,我对c+的强大功能有了更进一步的认识。为了能够准确地设计出程序,我多次核对课本上的知识,对程序进行了很大的改进。当遇到自己不能解决的问题时,也上网查询的许多的信息,同时也向其他同学进行了的咨询。终于完成了现在的课程设计!在这次设计中,遇到的了许多问题。如数据库的连接,汽车的信息显示,再到各个独立功能的实现,一步步走来收获颇多。其中数据库的连接及信息显示是碰到的主要的问题,起初我想用列表控件实现数据库中逐条记录的显示,但是我始终无法与数据库连接上,后来又改为编辑框可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论