字符串处理2课程设计报告书.doc_第1页
字符串处理2课程设计报告书.doc_第2页
字符串处理2课程设计报告书.doc_第3页
字符串处理2课程设计报告书.doc_第4页
字符串处理2课程设计报告书.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

河北联合大学2012-2013第2学期 软件设计基础-C+课程设计报告设计名称: 字符串处理2 姓 名: 王浩 学 号: 201214300208专业班级: 12工程管理2班 学 院: 建筑工程学院 设计时间: 2013年5月6月 设计地点: 机房 指导教师评语:教师评定:自评成绩:75 指导教师签字: 年 月 日软件设计基础-C+课程设计报告 第 14 页,共 14 页目 录1.课程设计目的2.课程设计任务与要求3.课程设计说明书4.课程设计成果5.程序调试过程6.设计问题的不足和改进方案7.课程设计心得8.参考文献1课程设计目的软件设计基础-C+课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C+的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握C+这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。2课程设计任务与要求:要求:本次课程设计利用软件设计基础-C+课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。要求:1、对系统进行功能需求分析2、设计合理的数据结构和系统框架3、编程简练,程序功能齐全,能正确运行4、说明书、流程图要清楚5、课题完成后必须按要求提交课程设计报告任务:问题描述:输入全班同学的姓名(假设不超过100名,名字长度不超过10字符),并按照降序排列输出全班姓名。然后,输入一个姓名,删除。问题的解决方案:要求用四个函数完成:姓名的输入函数、排序函数、姓名的输出函数,删除函数。基本要求:(1)用模块化设计思想来完成程序的设计(2)在VC中调试完成创新要求:用函数完成后,将删除结果保存到文件中。3 课程设计说明书概要设计模块说明: 在我设计的程序中一共包括了六个模块,分别是:新增模块、查找模块、修改模块、完全打印模块、删除模块、退出系统模块。这六个模块中新增、查找和修改都是独立分开作为子函数的,另外三个则是作为switch语句中的一部分,通过switch语句,把六大模块联系了起来,同时,为了实现多次使用这六大模块,就在switch语句外加了while循环。模块结构图: Main函数 While控制循环语句 输 入 模 块 删 除 模 块 排 序 模 块 输 出 模 块 退出程序详细设计 输入数据 删除数据 排序输入数据保存数据,结束总体流程图:各功能模块流程图:4课程设计成果源代码:#include#include#include#includeusing namespace std;void add(string a,vector&);bool Delete(string a,vector&);void look(vector&);int main()vectorname; cout1添加endl2删除endl3排序endl4查看n)if(n=1)couta;add(a,name);else if(n=2)couta;if(Delete(a,name) cout删除成功!endl;else cout没有此名字,删除失败endl;else if(n=3)sort(name.begin (),name.end();look(name);else if(n=4)look(name);return 0;void add(string a,vector&n)n.push_back (a);bool Delete(string a,vector&n)vector:iterator iter=n.begin (); for(;iter!=n.end ();iter+) if(*iter=a)iter=n.erase(iter);return true;return false;void look (vector&n)vector:iterator iter=n.begin (); for(;iter!=n.end ();iter+) cout*iterendl;过程演示1、运行程序2、输入姓名33、删除姓名4、姓名排序5、查看姓名5.程序调试过程1. 编译,检查是否有语法错误,如果有,则点击错处,就会在程序中指出,根据提示进行修改。没有的话进行链接,如此时出现错误很有可能是算法的错误,如若没有,则运行程序。2. 根据要求输入名字3. 根据要求删除名字4. 根据要求排序5. 查看保存的结果遇到的问题1. 对于输入名字删除一时没搞清楚2. 对于排序函数不熟悉3. 对函数的运用不是很熟悉,已开始出现了很多错误。6.设计问题的不足和改进方案1. 程序的界面比较粗糙2. 使用过程比较繁琐3. 对于函数的使用认识不足。7.课程设计心得通过这次的设计实验,对VC+有了更深的认识。回顾起此次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体通过这次课程设计之后,一定把以前所学过的知识重新温故。此次,程序的设计和创建,经历了平时在课堂中和考试中,决不会有的重重难题和问题。而这些问题,又都是课本上很少提到的、更深一层的知识领域和应用领域。这些问题,并不是我们平时只靠课本,就可以轻易解决的。 课本上学的东西得到了充分的运用,提高了自己的编程能力,对VC中常用的函数有了进一步的了解,对一些常用的排序函数等的熟练运用掌握了很多。此次程序的设计用到了许多的函数类型,对我掌握课本的知识有相当大的裨益。此外这个程序添加了保存,插入和删除等功能。总之通过这次的系统设计,对自己的思维,知识等方面都有了很大的补充,自己从中体会到了编程的乐趣。8.参考文献1.C+编程习题与答案 JchnR Hubbard编著 2002年出版 机械工业出版社2.C+程序设计与应用开发 王继民、柴春来编著 2008年出版 清华大学出版社3.标准C+程序设计 牛连强编著 2008年出版 人民邮电出版社4.C+

温馨提示

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

评论

0/150

提交评论