1、信息科学与技术学院信息科学与技术学院 程序设计基础课程设计报告程序设计基础课程设计报告 题目名称:题目名称: 字符串类字符串类 学生姓名:学生姓名: 学学 号号: : 专业班级:专业班级: 计算机科学与技术计算机科学与技术 2011(1)2011(1)班班 指导教师:指导教师: 完成日期:完成日期:20122012- -7 7- -2 2 1 目录目录 1 1课程设计目的课程设计目的 2 2 2 2 课程设计题目描述和要求课程设计题目描述和要求 3 3 2.12.1 课程题目课程题目 3 3 2.2.2 2 课程要求课程要求 3 3 2.32.3 流程图流程图 3 3 图图 2 2- -3 3
2、 物理模型图物理模型图 3 3 3.3.详细设计详细设计 4 4 3.13.1 数据类型数据类型 4 4 3.23.2 主要模块设计主要模块设计 . . 4 4 3.2.1 字符串比较字符串比较 4 3.2.2 字符串连接:字符串连接:. 6 3.33.3 控制面板的设置控制面板的设置 7 7 4 4 运行结果运行结果 9 9 5. 5. 课程设计总结课程设计总结 1010 6.6.参考书目:参考书目: 1111 2 1课程设计目的课程设计目的 C+程序设计是计算机科学与技术专业的必修课。自己做一个课程 设计是学习完本书后进行的一次全面的综合性练习。其目的在于加深对 C+ 编程的理解,培养学生
3、的实践能力,促进理论与实践的结合。通过课程设计, 让学生能够熟练运用 C+进行面向对象编程,建立对象模型,降低软件的复 杂性,改善软件的重用性和维护性,提高软件的生产效率,全面掌握面向对 象编程技术。 通过课程设计了解自己通过一学年的学习 C+这门课到底学的怎么样, 验证自己的学习成果,并进一步发现自己的不足并且改正. 3 2 课程设计题目描述和要求课程设计题目描述和要求 2.1 课程题目课程题目 字符串类(数组型) 2.2 课程要求课程要求 计算字符串的长度,初始化字符串,字符串比较,查找子串(从头开始或者 从尾开始) ,字符串连接等基本功能。 2.3 流程图流程图 图 2-3 物理模型图
4、主函数 设 置 字 符 计 算 长 度 字 符 串 比 较 查 找 字 符 串 字 符 串 连 接 4 3.详细设计详细设计 3.1 数据类型数据类型 为设计的字符串(数组型)定义类: class Cstring public: Cstring(); Cstring(char *s); void setValue(char *s); void setValue(string s); void setValue(Cstring s); int getLength(); int strComp( Cstring s); int subSearch(Cstring substr); int strC
5、on( Cstring s); string getValue()return str; private: string str; int length; ; 为字符串类功能的实现定义的构造函数、成员函数和变量。 3.2 主要模块设计主要模块设计 3.2.13.2.1 字符串比较字符串比较 代码: int Cstring:strComp( Cstring s) int i=0; while(stri=(s.getValue()i else if(stris.getV alue (stri=(s.getValue()i char *pstr=str; str=new charlength+1; coutpstrendl; strcpy(str,pstr); strcat(str,s.getValue(); delete pstr; strlength=0; return length; 图 3-2-2 字符串连接流程图 开始 参数赋值 串拼接 返回 length 结束 7 3.33.3 控制面板的设置控制面板的设置 void state() cout”*字符串功能测试*”endl ” 0. 提示 “endl ” 1. 初始化 “endl ” 2. 计算长度 “endl ” 3. 字符串比较 “endl ” 4. 查找子串 “endl ”