还剩15页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
河北联合大学2012-2013第2学期《软件设计基础-C++》课程设计报告设计名称公路收费程序姓名孙少臣学号201214670204专业班级金属材料专业轧2班学院冶金与能源学院设计时间2013年5月10日至2013年7月1日设计地点机房指导教师评语指导教师签字年月日目录
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语句,把其他三大模块__起来,同时,为了实现多次继续输入数据,就在o__.dispiay后加个switch语句来达到继续输入数据的效果模块结构图⑵详细设计总体流程图.各功能模块流程图12344.课程设计成果#includeiostream.hconstintunitcar=10;constintunittruck=25;constintunitbus=15;classFree{intcarcarfee;inttrucktruckfee;intbusbusfee;public:Free{car=carfee=truck=truckfee=bus=busfee=0;}voidcars{car++;carfee+=unitcar;}voidtrucks{truck++;truckfee+=unittruck;}voidbuss{bus++;busfee+=unitbus;}voidpro__ss{intnon=0;cout1:小客车2:卡车3:公汽0:退出endl;while1{cout++n-车型:;cinno;switchno{case0:break;case1:cars;break;case2:trucks;break;case3:buss;break;default:cout车型输入错误!endl;}ifno==0break;}}voiddisplay{cout收费统计如下:endl;cout小客车:car辆收费小计:carfeeendl;cout卡车:truck辆收费小计:truckfeeendl;cout公汽:bus辆收费小计:busfeeendl;cout收费合计:carfee+truckfee+busfeeendl;}};void__in{Freeo__;inti;o__.pro__ss;o__.display;while1{cout是否继续输入1:是0:否endl;cini;switchi{case1:o__.pro__ss;break;case0:break;default:cout输入错误!endl;}o__.display;ifi==0break;}}开始界面为输入数据后界面停止输入后最后结果界面
5.程序调试过程1先进行人工检查,即静态检查在写好一个程序以后,不要匆匆忙忙上机,而应对纸面上的程序进行人工检查2在人工检查无误后,才可以上机调试通过上机发现错误称动态检查在编译时给出语法错误的信息,可以根据提示的信息具体找出程序中出错之处并改正之如果系统提示的出错信息多,应当从上到下一一改正有时显示出一大片出错信息往往使人感到问题严重,无从下手其实可能只有一二个错误3在改正语法错误后,程序经过连接就得到可执行的目标程序运行程序,输入程序所需数据,就可得到运行结果应当对运行结果作分析看它是否符合要求有的初学者看到运行结果就认为没问题了,不作认真分析,这是危险的4运行结果不对,大多属于逻辑错误对这类错误往往需要仔细检查和分析才能发现问题
1、编译时就会对所有含该变量的语句发出出错信息
2、显示出一大片出错信息
3、一段程序调试多次都有一个错误,在包含stalfsa.h头文件出现问题原因
1、对使用的变量未定义
2、少了“}”或多了“}”,书写语句时忘记写“;”或是全角的“;”了
3、本计算机不存在这个文件,只能找另一个iostreamh替换
6.设计问题的不足和改进方案
(1)对自己的程序自我评价虽然我设计的这段程序可以基本完成题目要求,但还有待__改善,总的来说,优缺点都多少有点,这段程序可以方便的记录各类车型的车辆数和收费情况,但其功能比较少,使用面比较小,需进一步改善
(2)对课题提出更加完善的改进方案对于本课题,如果能更全面的记录车辆信息,如记录车牌号、车型、驾驶人信息等,与生活中的公路收费更接近
7.课程设计心得第一次接触c++这个东西真的让人感觉到有许多的陌生感,虽然一开始觉得很难,但学着学着就发现它越来越有意思我想学了这么久,课程设计是最能展示出学习成果的在这次设计中,一次次的失败让我感到十分的无力,但是我还是坚持做了下来,尽管仍然不__,但是我想我尽力了,这次设计让人遗憾的是收费界面和管理界面没能分开在这次课程设计中,我对c++的强大功能有了更进一步的认识为了能够准确地设计出程序,我多次核对课本上的知识,对程序进行了很大的改进当遇到自己不能解决的问题时,也上网查询的许多的信息,同时也向其他同学进行了的__终于完成了现在的课程设计!在这次设计中,遇到的了许多问题如数据库的连接,汽车的信息显示,再到各个__功能的实现,一步步走来收获颇多其中数据库的连接及信息显示是碰到的主要的问题,起初我想用列表控件实现数据库中逐条记录的显示,但是我始终无法与数据库连接上,后来又改为编辑框可是还是无法连接,最后我发现错误在于我基于的是对话框,所以才无法实现与数据库的相连,后来我把所有的控件都建在了主窗口才得以实现还有很多问题,都在权衡之后在我的能力范围内得到了较优的解决方法我希望在未来的c++道路上能够走的更远
8.____
1、《数据结构(c语言版)例题详解与课程设计指导》第二版袁志祥、秦锋主编中国科学技术大学出版社出版
2、《C++程序设计》谭浩强主编清华大学出版社教师评定自评成绩开始统计小客车数和收费小计统计客车的车辆数和收费小计统计公汽的车辆数和收费小计各类车型的车辆数和收费小计,合计总的收费金额开始Unitcar=10;Unittruck=25;Unitbus=10;Car=0carfee=0Truck=0truckfee=0Bus=0busfee=0输入3输入2输入1Voidbuss{bus++;busfee+=unitbus;}Voidtrucks{truck++;truckfee+=unittruck;}Voidcars{car++;carfee+=unitcar;}输出小客车car辆收费小计carfee卡车truck辆收费小计truckfee公汽bus辆收费小计busfee收费合计carfee+truckfee+busfeeVoidcars{car++;carfee+=unitcar;}统计小客车数和收费小计Voidtrucks{truck++;truckfee+=unittruck;}统计客车的车辆数和收费小计Voidbuss{bus++;busfee+=unitbus;}统计公汽的车辆数和收费小计输出小客车car辆收费小计carfee卡车truck辆收费小计truckfee公汽bus辆收费小计busfee收费合计carfee+truckfee+busfee各类车型的车辆数和收费小计,合计总的收费金额。