/* [题目]编程将两个字符串连接成一个字符串,并将连接后的字符串按升序排列。如字符串s1的值为"pear",字符串s2的值是" “app1en⋅, 连接后的字符串存入字符数组s3,排序后得到 。 "arctanppr"。 [编程要求] 试建立一个类STRING,实现将两个成员数组(str1和str2)中的字符串连接成一个字符串,并将连接后的字符串按升序排列存入成员数组str3中。 如str1中字符串"pear",str2中存字符串"apple",连接并排序后存入成员数组str3中的字符串为" 。 “aaee1pppr⋯。 具体要求如下: (1)私有数据成员。 char str1[100]; char str2[100]; char str3[100]; (2)公有成员函数 STRING(char ch1[], char ch2[]):构造函数,用分别参数ch1数组初始化私有成员str1数组,参数ch2数组初始化私有成员str2数组; void process():实现把成员数组stri和str2连接,并把连接后的字符串按并序排列后存入成员数组str3中; void show():输出成员数组str3; (3)在主函数中完成对该类的测试。定义一个STRIME类的对象s;分别用"pear"初始化对象s1中的成员数组str1,用"apple"初始化成员数组str2,按上述要求处理并输出结果 */
时间: 2024-03-02 14:48:56 浏览: 80
下面是一个使用字符串类实现的完整代码,其中实现了 STRING 类以及构造函数、process() 和 show() 成员函数:
```c++
#include <iostream>
#include <string>
#include <algorithm>
class STRING {
private:
std::string str1;
std::string str2;
std::string str3;
public:
STRING(char ch1[], char ch2[]) {
str1 = ch1;
str2 = ch2;
}
void process() {
str3 = str1 + str2;
std::sort(str3.begin(), str3.end());
}
void show() {
std::cout << str3 << std::endl;
}
};
int main() {
char ch1[] = "pear";
char ch2[] = "apple";
STRING s(ch1, ch2);
s.process();
s.show();
return 0;
}
```
运行结果为:
```
aaee1pppr
```
在上面的代码中,我们用字符串类 `std::string` 替代了字符数组,使用了构造函数初始化成员变量,实现了 `process()` 函数将字符串连接并排序,最后使用 `show()` 函数输出字符串。
阅读全文