用c++按照要求实现串的基本操作,程序界面如下所示:1.求字符串的长度 2.从主串中取一个子串 3.比较两个字符串的大小 4.比较一个子串在主串中的位置 5.将两个子串连接成一个新的字符串 0.退出系统
时间: 2024-03-07 07:48:16 浏览: 69
好的,以下是用C++实现的代码:
```c++
#include<iostream>
#include<string>
using namespace std;
class String{
private:
string str;
public:
String(string s){
str = s;
}
int length(){
return str.length();
}
string substring(int start, int end){
return str.substr(start, end - start);
}
int compare(String s){
if(str == s.str){
return 0;
}else if(str < s.str){
return -1;
}else{
return 1;
}
}
int find(String s){
size_t index = str.find(s.str);
if(index == string::npos){
return -1;
}else{
return index;
}
}
string concat(String s){
return str + s.str;
}
};
int main(){
while(true){
cout<<"请选择以下操作:"<<endl;
cout<<"1.求字符串的长度"<<endl;
cout<<"2.从主串中取一个子串"<<endl;
cout<<"3.比较两个字符串的大小"<<endl;
cout<<"4.比较一个子串在主串中的位置"<<endl;
cout<<"5.将两个子串连接成一个新的字符串"<<endl;
cout<<"0.退出系统"<<endl;
int choice;
cin>>choice;
if(choice == 1){
string s;
cout<<"请输入字符串:";
cin>>s;
String string(s);
cout<<"字符串长度为:"<<string.length()<<endl;
}else if(choice == 2){
string s;
cout<<"请输入字符串:";
cin>>s;
String string(s);
int start, end;
cout<<"请输入子串起始位置:";
cin>>start;
cout<<"请输入子串结束位置:";
cin>>end;
cout<<"子串为:"<<string.substring(start, end)<<endl;
}else if(choice == 3){
string s1, s2;
cout<<"请输入第一个字符串:";
cin>>s1;
String string1(s1);
cout<<"请输入第二个字符串:";
cin>>s2;
String string2(s2);
int result = string1.compare(string2);
if(result == 0){
cout<<"两个字符串相等"<<endl;
}else if(result == -1){
cout<<"第一个字符串小于第二个字符串"<<endl;
}else{
cout<<"第一个字符串大于第二个字符串"<<endl;
}
}else if(choice == 4){
string s1, s2;
cout<<"请输入主串:";
cin>>s1;
String string1(s1);
cout<<"请输入子串:";
cin>>s2;
String substring(s2);
int index = string1.find(substring);
if(index == -1){
cout<<"Substring not found"<<endl;
}else{
cout<<"子串在主串中的位置:"<<index<<endl;
}
}else if(choice == 5){
string s1, s2;
cout<<"请输入第一个子串:";
cin>>s1;
String string1(s1);
cout<<"请输入第二个子串:";
cin>>s2;
String string2(s2);
cout<<"新字符串为:"<<string1.concat(string2)<<endl;
}else if(choice == 0){
break;
}else{
cout<<"输入错误,请重新输入"<<endl;
}
}
return 0;
}
```
运行程序后,就会出现操作界面。您可以根据需要选择操作,程序会根据您的选择进行相应的操作。
阅读全文