這里是一個使用遞歸實現字符排序的C語言代碼示例:
#include <stdio.h>
void sortString(char str[]) {
if (str[0] == '\0') {
return;
}
for (int i = 0; str[i] != '\0'; i++) {
for (int j = i + 1; str[j] != '\0'; j++) {
if (str[i] > str[j]) {
char temp = str[i];
str[i] = str[j];
str[j] = temp;
}
}
}
sortString(str + 1);
}
int main() {
char str[] = "cbade";
printf("Original string: %s\n", str);
sortString(str);
printf("Sorted string: %s\n", str);
return 0;
}
在這個示例中,sortString
函數使用遞歸的方法來對字符串進行排序。它會逐個比較相鄰的字符,如果前一個字符大于后一個字符,則交換它們的位置。然后遞歸調用sortString
函數,將字符串的起始位置向后移動一位,直到字符串被完全排序。最后,在main
函數中打印出原始字符串和排序后的字符串。