[C Language] compile a function reverse_string (char * string) (Recursive Implementation)
Compile a function reverse_string (char * string) (Recursive Implementation) to sort the characters in the parameter string in reverse order. Requirement: the string operation function in the C function library cannot be used.
# Include <stdio. h> # include <assert. h> int my_strlen (const char * str) // custom function for calculating the string length {assert (str); int count = 0; while (* str) {count ++; str ++;} return count;} void reverse_string (char * str) // flip the string to CBA {assert (str ); char temp = 0; int len = my_strlen (str); if (len> 0) {temp = str [0]; str [0] = str [len-1]; str [len-1] = '\ 0'; // recursive call, restriction condition len> 0, change of each call str ++; reverse_string (str + 1 ); str [len-1] = temp;} int main () {char arr [] = "abcdef"; reverse_string (arr); printf ("% s \ n", arr ); system ("pause"); return 0 ;}