字符串排序:输入 5 个字符串,按由小到大的顺序输出。试编写相应程序。用c语言写
时间: 2023-05-25 22:06:44 浏览: 80
#include <stdio.h>
#include <string.h>
#define N 5 // 定义字符串个数
#define LEN 50 // 定义字符串最大长度
void sort_string(char arr[][LEN], int n) { // 自定义字符串排序函数
int i, j;
char temp[LEN];
for (i = 0; i < n - 1; i++) {
for (j = i + 1; j < n; j++) {
if (strcmp(arr[i], arr[j]) > 0) { // 按字典序比较字符串大小
strcpy(temp, arr[i]);
strcpy(arr[i], arr[j]);
strcpy(arr[j], temp);
}
}
}
}
int main() {
char str[N][LEN]; // 定义二维字符数组
int i;
for (i = 0; i < N; i++) {
printf("请输入第%d个字符串: ", i + 1);
fgets(str[i], LEN, stdin); // 从标准输入读入字符串
str[i][strlen(str[i]) - 1] = '\0'; // 将最后的换行符替换为结束符
}
sort_string(str, N); // 调用字符串排序函数
printf("按从小到大排序后的结果为: \n");
for (i = 0; i < N; i++) {
printf("%s\n", str[i]); // 输出排序后字符串
}
return 0;
}