C语言中可以使用库函数strcmp
和qsort
来对字符串进行排序。
- 使用
strcmp
函数比较两个字符串的大小,然后使用qsort
函数对字符串数组进行排序。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int compare(const void *a, const void *b) {
return strcmp(*(const char**)a, *(const char**)b);
}
int main() {
char *strings[] = {"hello", "world", "apple", "banana"};
int n = sizeof(strings) / sizeof(strings[0]);
qsort(strings, n, sizeof(char*), compare);
for (int i = 0; i < n; i++) {
printf("%s\n", strings[i]);
}
return 0;
}
这段代码会对字符串数组strings
进行排序,输出结果为:
apple
banana
hello
world
- 可以使用数组和选择排序或冒泡排序来对字符串数组进行排序。
#include <stdio.h>
#include <string.h>
void sortStrings(char *strings[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
if (strcmp(strings[i], strings[j]) > 0) {
char *temp = strings[i];
strings[i] = strings[j];
strings[j] = temp;
}
}
}
}
int main() {
char *strings[] = {"hello", "world", "apple", "banana"};
int n = sizeof(strings) / sizeof(strings[0]);
sortStrings(strings, n);
for (int i = 0; i < n; i++) {
printf("%s\n", strings[i]);
}
return 0;
}
这段代码会对字符串数组strings
进行排序,输出结果为:
apple
banana
hello
world
无论是使用qsort
函数还是自定义排序函数,都可以对字符串数组进行排序。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1043402.html