以下是一个基于冒泡算法的 C 代码样例:
#include <stdio.h>
#include <string.h>
void bubble_sort(char *str, int len) {
int i, j;
char temp;
for (i = 0; i < len - 1; i++) {
for (j = 0; j < len - i - 1; j++) {
if (*(str+j) > *(str+j+1)) {
temp = *(str+j);
*(str+j) = *(str+j+1);
*(str+j+1) = temp;
}
}
}
}
int main() {
char str[] = "dcba";
int len = strlen(str);
bubble_sort(str, len);
printf("Sorted string: %s\n", str);
return 0;
}
这个程序使用指针来交换字符串中的字符。在 bubble_sort 函数中,我们使用指针来访问字符串中的字符,然后比较它们并交换它们的位置。接下来,在 main 函数中,我们声明一个字符数组 str 并对其进行排序。最后,使用标准输出函数 printf 显示已排序的字符串。
这个程序的输出如下:
Sorted string: abcd