C语言将10个单词保存在二维字符型数组中,并对这10个单词进行字典序排序
时间: 2023-06-18 21:07:06 浏览: 220
C语言中二维字符数组.pdf
可以使用C语言的库函数`strcmp()`进行字符串比较,以实现对这10个单词进行字典序排序。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_WORDS 10
#define MAX_WORD_LEN 20
int main()
{
char words[MAX_WORDS][MAX_WORD_LEN];
int i, j;
char temp[MAX_WORD_LEN];
// 输入10个单词
printf("请输入10个单词:\n");
for (i = 0; i < MAX_WORDS; i++)
{
scanf("%s", words[i]);
}
// 字典序排序
for (i = 0; i < MAX_WORDS - 1; i++)
{
for (j = i + 1; j < MAX_WORDS; j++)
{
if (strcmp(words[i], words[j]) > 0)
{
strcpy(temp, words[i]);
strcpy(words[i], words[j]);
strcpy(words[j], temp);
}
}
}
// 输出排序后的单词
printf("\n排序后的单词为:\n");
for (i = 0; i < MAX_WORDS; i++)
{
printf("%s\n", words[i]);
}
return 0;
}
```
以上代码中,定义了一个二维字符型数组`words`用于保存10个单词,每个单词的最大长度为20(包括空字符)。使用循环和`scanf()`函数进行输入。排序使用了冒泡排序算法,每次比较相邻的两个单词,如果前面的单词大于后面的单词,则交换它们的位置。最后使用循环和`printf()`函数输出排序后的单词。
阅读全文