c++输入三个字符串,按照由大到小的顺序输出,要求用指针方法处理。
时间: 2023-12-10 09:40:59 浏览: 89
可以使用指针数组来处理字符串,然后进行冒泡排序。以下是示例代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
void sortStrings(string* arr[], int n) {
for (int i = 0; i < n-1; i++) {
for (int j = 0; j < n-i-1; j++) {
if (*arr[j] < *arr[j+1]) {
string* temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
int main() {
string str[3];
string* arr[3];
// 输入三个字符串
for (int i = 0; i < 3; i++) {
cin >> str[i];
arr[i] = &str[i];
}
// 排序字符串
sortStrings(arr, 3);
// 输出排序后的字符串
for (int i = 0; i < 3; i++) {
cout << *arr[i] << endl;
}
return 0;
}
```
注意:这里使用了引用传递的方式,因此需要将字符串的指针存储到指针数组中,而不是直接存储字符串本身。此外,如果要处理中文字符串,建议使用 `wchar_t` 类型代替 `string` 类型。
阅读全文