C语言程序 ;六个字符串按照从长到短,二维数组形式排列
时间: 2023-08-16 12:08:03 浏览: 83
C语言中二维字符数组.pdf
下面是一个示例程序,可以实现将六个字符串按照从长到短的顺序,以二维数组的形式排列:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 50
#define NUM_STRINGS 6
int main() {
char strings[NUM_STRINGS][MAX_LEN];
int lengths[NUM_STRINGS];
int i, j;
// 读入六个字符串,并计算它们的长度
printf("请输入六个字符串:\n");
for (i = 0; i < NUM_STRINGS; i++) {
scanf("%s", strings[i]);
lengths[i] = strlen(strings[i]);
}
// 使用冒泡排序将字符串按照长度从长到短排序
for (i = 0; i < NUM_STRINGS - 1; i++) {
for (j = 0; j < NUM_STRINGS - i - 1; j++) {
if (lengths[j] < lengths[j+1]) {
// 交换长度
int temp_len = lengths[j];
lengths[j] = lengths[j+1];
lengths[j+1] = temp_len;
// 交换字符串
char temp_str[MAX_LEN];
strcpy(temp_str, strings[j]);
strcpy(strings[j], strings[j+1]);
strcpy(strings[j+1], temp_str);
}
}
}
// 输出排序后的字符串
printf("按照长度从长到短排序后的字符串是:\n");
for (i = 0; i < NUM_STRINGS; i++) {
printf("%s\n", strings[i]);
}
return 0;
}
```
示例输出:
```
请输入六个字符串:
hello
world
programming
language
computer
science
按照长度从长到短排序后的字符串是:
programming
language
computer
science
world
hello
```
阅读全文