c程序设计报告停车场.doc_第1页
c程序设计报告停车场.doc_第2页
c程序设计报告停车场.doc_第3页
c程序设计报告停车场.doc_第4页
c程序设计报告停车场.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、C+课程设计报告题 目: 学生成绩管理程序 课 程: C+程序设计院 (部): 计算机与信息技术学院专 业: 软件工程班 级: 2015级4班学生姓名: 张越学 号:成日期: 2016年6月19日 南阳师院软件工程专业C+语言课程设计报告目 录1 课程设计目的12 任务与要求13 主要数据结构(类 函数)24 程序功能结构25 功能测试36 课程设计总结77 附:课程设计源代码8C+语言课程设计报告书1.课程设计目的(1)巩固和加深学生对c+课程基本知识的理解和掌握;(2)掌握c+编程和调试的基本技能;(3)利用c+进行简单软件设计的基本思路和方法,初步理解面向对象编

2、程思想;(4)提高学生运用c+解决实际问题的能力;(5)提高学生综合运用C+编程知识的能力;(6)培养学生工程设计和综合分析的能力;(7)培养和提高学生书写课程设计报告的能力;(8)培养学生实际操作能力和团结协作能力,为后续课程的学习打下坚实的基础。2.课程设计任务与要求任务:编写停车场管理程序,用于停车场对车辆的管理。程序能够实现可用车位统计与查询、零车位提示、停车时长统计、按车型时长收费、管理员收费累计等功能。要求:编写停车场收费管理系统,定义汽车类Car和管理员类Manager,Car类有number(车牌号),model(车型)、et(enter time,入场时间)、qt (quit

3、 time)、price(每小时收费价)、cost(费用)等属性,Manager类有id和key等,实现以下收费功能:可用车位统计与查询;零车位提示;停车时长统计;按车型时长收费; 管理员收费累计。主界面如下:3.主要数据结构(类,函数) 主函数:int main();停车函数:void putcar();取车函数:void tackcar();时间函数:string time1;判断车位函数:int juge;4.程序功能结构程序主要功能如图1所示。用户登录退出泊车操作查询信息取车操作查询历史信息退出查询车位查询车牌号车牌号车牌号5.功能测试运行程序,进入主界面: 用户名或者密码输入错误截图

4、用户名和密码正确进入系统的截图输入车牌号的界面车辆类型选择界面查询信息界面按车牌查询界面按车位查询界面历史信息查询界面收费界面6.课程设计总结经过一个学期对C+程序设计的学习,我学习到了基本的理论知识,了解到了C+语言程序设计的思想,这些知识都为我的课程实践和进一步的学习打下了坚实的基础。通过C+课程设计,一方面是为了检查这一个学期来计算机语言的学习成果,另一方面也是为了让我们进一步掌握和熟练地运用它,与此同时,也能够让我们认清自己在C+学习方面的不足之处和薄弱环节,并加以弥补和巩固。通过对教学管理系统的程序设计,进一步的巩固了用C+语言编写程序的能力,并且利于更好的掌握C+语言!在为期近一周

5、的C+课程设计中,我体会颇多,学到了很多东西。我懂得了用Microsoft Visual C+ 6.0对程序进行调试,我加强了对C+程序设计这门课程的认识,并且复习了自己以前学习到的知识,自己的逻辑思考能力也提高不少。这些都使得我对计算机语言的学习有了更深入的认识!总之,通过这次课程设计,我收获颇丰,相信会为自己以后的学习和工作带来很大的好处。最重要的还是激发了我编程的兴趣和热情,让我从一个只懂理论变成了能做一些小型程序。整体地评价这次课程设计,我认为收获很大,正如上面所说的那样,通过课程设计,既复习了以前的旧知识,又学到了一些新的知识。像停车场管理系统这样的应用程序的设计和创建,经历了平时在

6、课堂和考试中不会出现的难题和考验。而这些问题,又都是课本上很少提到的、更深一层的实践与知识相结合的问题,这并不是我们平时只靠课本,就可以轻易解决的。所以,锻炼了我们面对难题,学会用已掌握的知识去解决具体问题的能力,进一步培养了独立思考问题和解决问题的能力。特别是学会了在Visual C+中如何调试程序的方法。当然,老师的指导和同学的帮助也是不可忽视的,他们给了我许多提示和帮助,教会了我编译复杂程序的方法。总而言之,这次C+程序设计实践让我收获很大。7. 附件:程序源代码#include #include #include #include #includeusing namespace std

7、; class car public: char no9; int pos; double fee; void putcar(); void takecar(); ; class Time public: int hour; int min; void getime(); ; int i,poi; int position100=0;/全局变量 car carin100; Time catime100; int juge(); int comp(); void search_no(); void search_pos(); void main() /用户登录 const char ha10=w

8、angbing;/管理员用户名 const char hb10=1427;/管理员密码 char cn10,cm10; int ci=0; while(1) coutcn; if(strcmp(ha,cn) cout输入错误!n; ci+; if(ci=3) return; continue; else coutcm; if(!strcmp(hb,cm) break; else cout密码错误!n; ci+; if(ci=3) return; continue; /主程序 int k; cout请选择: nnt nnt 1.泊车操作 nnt 2.取车操作 nnt 3.查询信息 nnt 4.

9、退出 nntnn; ofstream outfile(车辆信息.txt,ios:app);if(! outfile)cerropen error!endl;exit(1);/ifstream infile(车辆信息.txt,ios:in);/if(! outfile)/cerropen error!k) if(k=1) i=juge(); coutcarini.no; carini.putcar(); cout请选择: nnt nnt 1.泊车操作 nnt 2.取车操作 nnt 3.查询信息 nnt 4. 退出 nntnn;string time1;time_t t; time(&t); ti

10、me1=ctime(&t); couttime1;/导入系统时间outfilecarini.no time1endl;/保存车辆信息。continue; if(k=2) poi=comp(); carinpoi.takecar(); cout请选择: nnt nnt 1.泊车操作 nnt 2.取车操作 nnt 3.查询信息 nnt 4. 退出 nntnn;continue; if(k=3) int x; while(1) coutnntnnt查询车牌号请选择1,查询车位请选择2,查询历史信息请选择3,退出请选择4: x; if(x=1) search_no();break; else if(x

11、=2) search_pos();break; else if(x=3)string a,time11005;/定义二维数组读取数据int i,j,m,n;ifstream infile(车辆信息.txt,ios:in);if(! infile)cerropen error!a;for(i=0;i5;i+)for(m=0;mtime1mi;cout ;couta ;for(j=0;j5;j+)for(n=0;n100;n+)couttime1nj ;/将存储的数据用数组形式输出/查询历史信息else if(x=4)break;else coutt选择错误,请重新选择:; cout请选择: nn

12、t nnt 1.泊车操作 nnt 2.取车操作 nnt 3.查询信息 nnt 4. 退出 nntnn; outfile.close(); int juge() /判断出第一个空的车位 int j=0; while(positionj=1&j100) j+; if(j100) positionj=1; return j; int comp() char ch9; coutch; for(int k=0;k100;k+) if(!strcmp(ch,carink.no) if(positioncarink.pos-1=1) return (carink.pos-1); break; if(k=10

13、0) return k; void car:putcar() int t; while(1) coutnntnnt货车请输入1,客车请输入2,轿车请输入3,其他请输入4: t; if(t=1) carini.fee=7.0;break; else if(t=2) carini.fee=5.0;break; else if(t=3)carini.fee=4.0;break; else if(t=4)carini.fee=4.0;break;cout输入错误!请重新输入:n; if(i=100) cout对不起,车位已满!n; carini.pos=i+1; /自动输出车位号 coutnnt;co

14、utnnt车位号:carini.posendl; catimei.getime(); coutnnt现在时间是:catimei.hour:catimei.minendl; coutnntendl; void car:takecar() int hour1,min1; double charge; if(poi100) positionpoi=0;/重新设置为空位 hour1=catimepoi.hour; min1=catimepoi.min; catimepoi.getime(); hour1=catimepoi.hour-hour1; min1=catimepoi.min-min1; if(min130)/计算出停车时间 charge=carinpoi.fee*hour1+carinpoi.fee*0.5; else charge=carinpoi.fee*hour1+carinpoi.fee; coutt车费为:charge元.n; /计算出车费输出 else couttm_hour; min=newtime-tm_min; void search_no() int poi=comp(); i

温馨提示

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

评论

0/150

提交评论