用C语言编写程序:从键盘输入4个字符串(长度<20),存入二维字符数组中。然后对他们由小到大进行排序,最后输出排序后的四个字符串
时间: 2024-02-18 17:00:01 浏览: 29
好的,这是一个简单的字符串排序程序,你可以参考以下代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 20
#define NUM_STRINGS 4
int main()
{
char strings[NUM_STRINGS][MAX_LEN];
char temp[MAX_LEN];
// 输入字符串
for (int i = 0; i < NUM_STRINGS; i++) {
printf("请输入第 %d 个字符串:", i + 1);
scanf("%s", strings[i]);
}
// 排序字符串
for (int i = 0; i < NUM_STRINGS - 1; i++) {
for (int j = i + 1; j < NUM_STRINGS; j++) {
if (strcmp(strings[i], strings[j]) > 0) {
strcpy(temp, strings[i]);
strcpy(strings[i], strings[j]);
strcpy(strings[j], temp);
}
}
}
// 输出排序后的字符串
printf("排序后的字符串:\n");
for (int i = 0; i < NUM_STRINGS; i++) {
printf("%s\n", strings[i]);
}
return 0;
}
```
代码中,我们首先定义了一个二维字符数组 `strings` 来存储输入的字符串,以及一个临时字符数组 `temp` 用于交换字符串。然后通过循环输入四个字符串,接着使用双重循环对四个字符串进行排序,最后输出排序后的四个字符串。
注意,代码中我们使用了 `strcmp` 函数来比较两个字符串的大小关系,`strcpy` 函数来拷贝字符串。同时,我们限制了字符串长度不超过 `MAX_LEN`,输入的字符串个数为 `NUM_STRINGS`。