《软件设计基础-c》课程设计报告书

上传人:自*** 文档编号:80534070 上传时间:2019-02-19 格式:DOC 页数:16 大小:236.30KB
返回 下载 相关 举报
《软件设计基础-c》课程设计报告书_第1页
第1页 / 共16页
《软件设计基础-c》课程设计报告书_第2页
第2页 / 共16页
《软件设计基础-c》课程设计报告书_第3页
第3页 / 共16页
《软件设计基础-c》课程设计报告书_第4页
第4页 / 共16页
《软件设计基础-c》课程设计报告书_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《《软件设计基础-c》课程设计报告书》由会员分享,可在线阅读,更多相关《《软件设计基础-c》课程设计报告书(16页珍藏版)》请在金锄头文库上搜索。

1、河北联合大学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+课程设计是这门课程

2、的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C+的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握C+这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。2课程设计任务与要求:要求:本次课程设计利用软件设计基础-C+课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。要求:1、对系统进行功能需求分析2、设计合理的数据结构和系统框架3、编程简练,程序功能齐全,能正确运行4、说

3、明书、流程图要清楚5、课题完成后必须按要求提交课程设计报告任务:(1)用模块化设计思想来完成程序的设计(2)要求各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp文件中,要求使用头文件;3课程设计说明书概要设计模块说明: 在我设计的程序中一共包括四个模块,分别是统计小客车数和收费小计模块、统计客车的车辆数和收费小计模块、统计公汽的车辆数和收费小计模块、收费处理模块。这四个模块中统计小客车数和收费小计模块、统计客车的车辆数和收费小计模块、统计公汽的车辆数和收费小计模块都是独立分开作为子函数的,另外一个包含着switch语句,通过switch语句,把其他三大模块联系起来,同时,为

4、了实现多次继续输入数据,就在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+=unit

5、truck;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;统计公汽的车辆数和

6、收费小计 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=tr

7、uck=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;

8、 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;obj.process(); obj.display();while (1)cout是否继续输入? 1:是

9、0:否 i;switch(i) case 1: obj.process();break;case 0: break;default: cout输入错误! endl; obj.display(); if(i=0) break; 开始界面为:输入数据后界面:停止输入后最后结果界面:5.程序调试过程1先进行人工检查,即静态检查。在写好一个程序以后,不要匆匆忙忙上机,而应对纸面上的程序进行人工检查。2在人工检查无误后,才可以上机调试。通过上机发现错误称动态检查。在编译时给出语法错误的信息,可以根据提示的信息具体找出程序中出错之处并改正之。 如果系统提示的出错信息多,应当从上到下一一改正。有时显示出一大

10、片出错信息往往使人感到问题严重,无从下手。其实可能只有一二个错误。3在改正语法错误后,程序经过连接就得到可执行的目标程序。运行程序,输入程序所需数据,就可得到运行结果。应当对运行结果作分析。看它是否符合要求。有的初学者看到运行结果就认为没问题了,不作认真分析,这是危险的。 4 运行结果不对,大多属于逻辑错误。对这类错误往往需要仔细检查和分析才能发现。 问题 : 1、编译时就会对所有含该变量的语句发出出错信息 2、显示出一大片出错信息 3、一段程序调试多次都有一个错误,在包含stalfsa.h头文件出现问题 原因: 1、 对使用的变量未定义 2、少了“”或多了“”,书写语句时忘记写“;”或是全角

11、的“;”了 3、本计算机不存在这个文件,只能找另一个iostream,h替换6.设计问题的不足和改进方案 (1)对自己的程序自我评价虽然我设计的这段程序可以基本完成题目要求,但还有待完美改善,总的来说,优缺点都多少有点,这段程序可以方便的记录各类车型的车辆数和收费情况,但其功能比较少,使用面比较小,需进一步改善。(2)对课题提出更加完善的改进方案 对于本课题,如果能更全面的记录车辆信息,如记录车牌号、车型、驾驶人信息等,与生活中的公路收费更接近。7.课程设计心得第一次接触c+这个东西真的让人感觉到有许多的陌生感,虽然一开始觉得很难,但学着学着就发现它越来越有意思。我想学了这么久,课程设计是最能展示出学习成果的。 在这次设计中,一次次的失败让我感到十分的无力,但是我还是坚持做了下来,尽管仍然不完美,但是我想我尽力了,这次设计让人遗憾的是收费界面和管理界面没能分开。在这次课程设计中,我对c+的强大功能有了更进一步的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号