C++课程设计之string字符串类

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程名称: C++程序设计

课程代码:05

题目: 字符串类的设计

年级/专业/班: 软件工程2班

学生姓名:

学号:

指导教师: 袁辉勇

开题时间: 2011 年 5 月 15 日

完成时间: 2011 年 6 月 5 日

—湖南人文科技学院计算机系

目录

一引言 (3)

二设计目的与任务 (3)

三设计方案 (4)

1 总体设计 (4)

2 详细设计 (4)

四程序清单 (4)

五程序调试与体会 (10)

六运行结果 (14)

七结论................................................. 错误!未定义书签。八参考文献............................................... 错误!未定义书签。

摘要

本设计通过定义字符串类来实现对字符串的赋值、连接、复制、查找、交换操作。首先定义一个字符串类,通过调用字符串类中成员函数,对字符串类进行赋值,然后实现了字符串类之间的连接,字符串类之间的相互复制,字符串类之间的交换,最后可以对该字符串类中的字符串进行查找。

关键字:字符串;类;成员函数;对象

Abstract

By defining the design of this type of string to string to the realization of the assignment, to connect, copy, find, exchange operations. First of all, the definition of a type of string, by calling members of the String class function, the type of string for assignment, and then realized the connection between the type of string, string-type between the copy, between string-type In exchange, the last class to the string of string to find.

Keywords: string; category; members of the function; object 。

《C++程序设计》课程设计

------字符串类的设计一引言

随着人们生活水平的提高,计算机发展异常迅速。如今,计算机已经深入到我们社会的各个领域,计算机的使用也已不再局限于科学计算,它已进入人类社会的各个领域并发挥着越来越重要的作用。通过计算机对各类信息的管理已经成为一种高效、快捷的方式。本课程设计就是要求完成一个字符串类的设计,使所设计出的字符串类具有包括赋值、连接、复制、查找、交换等功能

二设计目的与任务

1、设计目的:

这个程序是通过C++语言采用向量的方法来设计的。通过本次的C++课程设计,我们将会把平日书本上的知识真正应用到了实际中来。深入了解C++各类及相关函数的应用,结合其它相关知识,如软件工程等,把所学知识融会贯通。

2、设计任务:

我们此次做的字符串类设计课程将要完成以下功能:

1字符串类对象的输入输出;

2.字符串的长度;

3.字符串的连接;

4.字符串的拷贝;

5.字符串的减法;

6.子串在主串中的定位;

7.子串替换功能;

三设计方案

1 总体设计

定义一个String类,实现对字符串类的赋值、连接、复制、查找、交换等操作。先设计一个总类然后写出多个子类来实现任务所给定的功能。

2 详细设计

程序中用到的函数:

通过下列成员函数来说明设计中需要考虑的问题。

String类是用来对字符串类的赋值,字符串之间的比较,字符串之间的连接,字符串之间的相互复制,字符串之间的交换,字符串中的字符查找等功能。

因为VC系统有自带的类,所以每个功能函数都要自己编写!

高度模仿VC自带string类得功能!!!!

1string类中的的代码清单如下:

class string

{ private:

char str[N];

int len;

public:

string(char *p){ copy(str,p); }

string (){};

void copy(char *s1,char *s2);

void copy(char *s);

void str_set(){ cin>>str; }

void str_out(){cout<

void append(char *s);

void word_str(char *s,int n1,int n2);

void swap(char *s1,char *s2);

int length ();

int find (char s);

int compaer(char *s);

};

四程序清单

#include

const int N=200;

int n ,flag=0;

class string

{ private:

char str[N];

int len;

public:

string(char *p){ copy(str,p); } //字符串的构造

string (){};

void copy(char *s1,char *s2);

void copy(char *s);

void str_set(){ cin>>str; } //字符串的输入

void str_out(){cout<

void append(char *s);

void word_str(char *s,int n1,int n2);

void swap(char *s1,char *s2);

int length ();

int find (char s);

int compaer(char *s);

};

int strlen(char *s)

{ int i=0;

while(s[i++]!='\0');

return i-1;

}

void tishi()

{ char yorn;

cout<<"\n是否退出系统[Y/N]:";

cin>>yorn;

cout<

if(yorn=='y'||yorn=='Y') flag=1;

else

if(yorn=='n'||yorn=='N'){flag=0;cout<<"请再次输入功能序号\n";} else

{ flag=0; cout<<"输入有误,请重新输入"<

}

int string::length() //字符串长度

{ int i=0;

相关文档
最新文档