将5个单词从小到大排序后输出。用指针数组存放单词
时间: 2024-02-03 16:14:06 浏览: 71
用指针实现的排序算法
下面是一个 C++ 实现的例子:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
const int MAX_N = 5; // 单词个数
const int MAX_LEN = 20; // 单词最大长度
int main() {
char words[MAX_N][MAX_LEN]; // 存储单词的数组
char *p[MAX_N]; // 存储指针的数组
int i, j;
// 输入单词
for (i = 0; i < MAX_N; i++) {
cout << "请输入第" << i + 1 << "个单词:";
cin >> words[i];
p[i] = words[i]; // 指针数组存储单词的地址
}
// 冒泡排序,从小到大
for (i = 0; i < MAX_N - 1; i++)
for (j = 0; j < MAX_N - 1 - i; j++)
if (strcmp(p[j], p[j + 1]) > 0) {
char *temp = p[j];
p[j] = p[j + 1];
p[j + 1] = temp;
}
// 输出排序后的结果
cout << "排序后的结果为:" << endl;
for (i = 0; i < MAX_N; i++)
cout << p[i] << endl;
return 0;
}
```
其中,`words` 数组用于存储输入的单词,`p` 数组用于存储单词的地址。在输入单词时,将每个单词的地址存储到 `p` 数组中。然后使用冒泡排序将 `p` 数组中的单词按照字典序从小到大排序。最后输出排序后的结果。
阅读全文