文档视界 最新最全的文档下载
当前位置:文档视界 › 字符串操作

字符串操作

字符串操作
字符串操作

#include

#include

using namespace std;

class a//连接类

{ public:

a(string &s1) { char str2[20];

cout<<"请输入要连接的字符串:"<

gets(str2);

string s2(str2);

string s3;

s3=s1.append(s2);//连接s2到s1后并赋s3

cout<

}

};

class b//复制类

{ public:

b(string &s1) {

string s2(s1);//把s1拷贝给s2

cout<<"字符串2:"<

}

};

class c//查找类

{ public:

c (string &s1) {

cout<<"请输入要查找的字符或字符串"<

char str2[20];

gets(str2);

if(s1.find(str2)>s1.length())cout<<"找不到你输入的字符或字符串!"<

else cout<<"你要找的字符串的开始位置是:"<

}

};

class d//交换类

{ public:

d(string &s1) { char str2[20];

cout<<"请输入要交换字符串s2:"<

gets(str2);

string s2(str2);

s1.swap(s2);//把s2和s1交换

cout<<"交换后s1为:"<

cout<

}

};

class e//求子串类

{ public:

e(string &s1) {

int start,n;

cout<<"请输入子串的起始位置:";

cin>>start;

cout<<"请输入子串的长度:";

cin>>n;

string s3=s1.assign(s1,start-1,n);//把字符串s中从start开始的n个字符赋给当前字符串

cout<

}

};

class f//比较类

{ public:

f(string &s1) { char str2[20];

cout<<"请输入要比较的字符串s2:"<

gets(str2);

string s2(str2);

if(https://www.docsj.com/doc/0c14942208.html,pare(s2)<0)//比较其大小

cout<<"s1比s2小"<

if(https://www.docsj.com/doc/0c14942208.html,pare(s2)>0)

cout<<"s1比s2大"<

if(https://www.docsj.com/doc/0c14942208.html,pare(s2)==0)

cout<<"s1与s2相等"<

}

};

void main( )

{ cout<<"menu:"<

cout<<" ******************************* "<

cout<<"\t* 欢迎进入字符串设计*\t"<

cout<<" ********************** "<

cout<<" ********************* "<

cout<<" 1)**********连接***********"<

cout<<" 2)***********复制***********"<

cout<<" 3) ************查找***********"<

cout<<" 4)***********交换***********"<

cout<<" 5)**********求子串类********** "<

cout<<" 6)***********比较************ "<

cout<<" 7)**********退出************"<

cout<<"请输入一个字符串s1:"<

gets(str1);

string s1(str1);

len=strlen(str1);//保存字符串长度

while(num!=7)//功能选项

{ cout<<"请选择功能的序号:"<

cin>>num;

if(num==1)a a(s1);

if(num==2)b a(s1);

if(num==3)c a(s1);

if(num==4)d a(s1);

if(num==5)e a(s1);

if(num==6)f a(s1);

}

}

相关文档