题目4.将5个单词从小到大排序后输出。用指针数组存放单词。 题目代码
时间: 2024-02-20 22:01:08 浏览: 33
下面是一个示例代码,实现了将5个单词按照字典序从小到大排序并输出:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
int main() {
char words[5][MAX_LEN];
char *ptr[5];
printf("请输入5个单词:\n");
for (int i = 0; i < 5; i++) {
scanf("%s", words[i]);
ptr[i] = words[i];
}
// 冒泡排序
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4 - i; j++) {
if (strcmp(ptr[j], ptr[j + 1]) > 0) {
char *temp = ptr[j];
ptr[j] = ptr[j + 1];
ptr[j + 1] = temp;
}
}
}
printf("排序后的结果是:\n");
for (int i = 0; i < 5; i++) {
printf("%s\n", ptr[i]);
}
return 0;
}
```
该代码中,我们首先定义了一个二维字符数组 `words`,用于存放输入的5个单词。同时,我们定义了一个指针数组 `ptr`,用于存放 `words` 中每个单词的地址。
我们使用 `scanf` 函数从标准输入中读入这5个单词,并将每个单词的地址存放到 `ptr` 数组中。
接下来,我们使用冒泡排序算法对 `ptr` 数组中的指针进行排序。排序的依据是通过 `strcmp` 函数比较两个字符串的大小,如果第一个字符串比第二个字符串大,则返回正数;如果两个字符串相等,则返回0;否则返回负数。
最后,我们遍历 `ptr` 数组,输出排序后的结果。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)