n个字符串排序 C语言
时间: 2023-09-19 12:12:50 浏览: 78
字符串排序算法比较(C语言)
可以使用C语言中的qsort()函数来对n个字符串进行排序。
示例代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int compare(const void *a, const void *b) {
return strcmp(*(const char **)a, *(const char **)b);
}
int main() {
int n;
printf("请输入字符串个数:");
scanf("%d", &n);
char **str = (char **)malloc(n * sizeof(char *));
printf("请输入字符串:\n");
for (int i = 0; i < n; i++) {
str[i] = (char *)malloc(100 * sizeof(char));
scanf("%s", str[i]);
}
qsort(str, n, sizeof(char *), compare);
printf("排序后的字符串为:\n");
for (int i = 0; i < n; i++) {
printf("%s\n", str[i]);
free(str[i]);
}
free(str);
return 0;
}
在上述代码中,compare()函数用于比较两个字符串的大小关系,qsort()函数则用于进行排序。我们先通过动态内存分配的方式读入n个字符串,然后对其进行排序,最后输出排序后的结果,并释放动态分配的内存。
阅读全文