:在主函数中输入 5 个等长的字符串,用另一个函数对它们排 序,然后在主函数输出这 5 个已经排好的字符串(要求使用指针进行 排序,按 ASCII 值由大到小进行排序)使用c++进行编写
时间: 2024-03-25 22:39:52 浏览: 50
C语言程序设计-编写函数fun对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果;
5星 · 资源好评率100%
好的,下面是一个示例代码:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
void sortStrings(char* arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
if (strcmp(arr[i], arr[j]) < 0) {
char* temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
int main() {
const int n = 5;
char* arr[n];
cout << "请输入" << n << "个字符串:" << endl;
for (int i = 0; i < n; i++) {
arr[i] = new char[100];
cin >> arr[i];
}
sortStrings(arr, n);
cout << "排序后的字符串为:" << endl;
for (int i = 0; i < n; i++) {
cout << arr[i] << endl;
delete[] arr[i];
}
return 0;
}
```
在这个程序中,我们使用了一个名为 `sortStrings` 的函数来对字符串数组进行排序。该函数采用冒泡排序算法,按照 ASCII 值由大到小进行排序。在主函数中,我们定义了一个包含 5 个字符串指针的数组,并使用 `cin` 输入这些字符串。然后,我们调用 `sortStrings` 函数对它们进行排序,并使用 `cout` 输出排序后的结果。最后,我们使用 `delete[]` 释放掉为每个字符串指针动态分配的内存,避免内存泄漏。
阅读全文