字符串排序C语言,不用函数
时间: 2024-12-01 16:09:00 浏览: 14
如果你想在C语言中手动实现字符串的字典序排序,而不使用现成的库函数,可以采用冒泡排序、选择排序或插入排序等简单算法。这里以冒泡排序为例,它通过反复交换相邻元素的位置来进行排序:
```c
#include <stdio.h>
#include <string.h>
void swap(char **a, char **b) {
char temp[100];
strcpy(temp, *a);
strcpy(*a, *b);
strcpy(*b, temp);
}
void bubble_sort(char** array, int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (strcmp(array[j], array[j + 1]) > 0) { // 如果前一个字符串大于后一个
swap(&array[j], &array[j + 1]);
}
}
}
}
int main() {
char* strings[] = {"banana", "apple", "cherry", "date"};
int size = sizeof(strings) / sizeof(strings[0]);
bubble_sort(strings, size);
for (int i = 0; i < size; i++) {
printf("%s ", strings[i]);
}
return 0;
}
```
这段代码首先定义了一个`bubble_sort`函数,然后在`main`函数中创建一个字符串数组,调用该函数进行排序。排序完成后,遍历数组打印结果。
阅读全文