编写一个程序,让用户输入一些英文单词,然后按照单词的长度从小到大排序,并输出排序后的结果。如果有两个单词的长度相同,按照输入的顺序不变,用C语言
时间: 2023-10-07 22:09:06 浏览: 81
以下是一个简单的 C 语言程序,实现了用户输入英文单词并按长度排序的功能:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
int n, i, j;
char temp[50];
printf("请输入单词的个数:");
scanf("%d", &n);
char words[n][50];
printf("请输入单词:\n");
for (i = 0; i < n; i++) {
scanf("%s", words[i]);
}
// 使用冒泡排序法按单词长度排序
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (strlen(words[j]) > strlen(words[j+1])) {
strcpy(temp, words[j]);
strcpy(words[j], words[j+1]);
strcpy(words[j+1], temp);
}
}
}
printf("按长度排序后的单词:\n");
for (i = 0; i < n; i++) {
printf("%s\n", words[i]);
}
return 0;
}
```
该程序使用冒泡排序算法实现按单词长度排序,其中 `words` 是一个二维字符数组,用于存储用户输入的单词。首先,程序会提示用户输入单词的个数和单词本身,然后按照长度从小到大排序并输出排序后的结果。
阅读全文