char name[5][20]={"baidu","alibaba","tencent","jd","bytedance"}; ,用选择排序法将字符串按照名字长度的降序排序
时间: 2023-11-26 08:48:51 浏览: 75
可以使用选择排序法对字符串按照名字长度的降序排序。具体实现方法如下:
```
#include <stdio.h>
#include <string.h>
int main()
{
char name[5][20] = {"baidu", "alibaba", "tencent", "jd", "bytedance"};
int i, j, max_len_idx;
char temp[20];
for (i = 0; i < 4; i++) {
max_len_idx = i;
for (j = i + 1; j < 5; j++) {
if (strlen(name[j]) > strlen(name[max_len_idx])) {
max_len_idx = j;
}
}
if (max_len_idx != i) {
strcpy(temp, name[i]);
strcpy(name[i], name[max_len_idx]);
strcpy(name[max_len_idx], temp);
}
}
for (i = 0; i < 5; i++) {
printf("%s\n", name[i]);
}
return 0;
}
```
这段代码中,我们首先定义了一个二维字符数组`name`,其中存储了5个字符串。然后我们使用选择排序法对这些字符串按照名字长度的降序排序。具体来说,我们从第一个字符串开始,依次找到剩余字符串中长度最长的字符串,并将其与当前字符串交换位置。最终得到的`name`数组就是按照名字长度的降序排列的。
阅读全文