C 程序:使用递归反转字符串

原文:https://www.studytonight.com/c/programs/recursion/reverse-a-string-using-recursion

下面是一个用 C 语言递归反转用户输入字符串的程序。

#include<stdio.h>
#include<conio.h>

// declaring recursive function
char* reverse(char* str);

void main()
{
    int i, j, k;
    char str[100];
    char *rev;
    printf("Enter the string:\t");
    scanf("%s", str);
    printf("The original string is: %s\n", str);
    rev = reverse(str);
    printf("The reversed string is: %s\n", rev);
    getch();
}

// defining the function
char* reverse(char *str)
{
    static int i = 0;
    static char rev[100];
    if(*str)
    {
        reverse(str+1);
        rev[i++] = *str;
    }
    return rev;
}

输入字符串:今晚学习原始字符串是:今晚学习反向字符串是:开始