使用递归反转句子的 C 程序

要理解此示例,您应该具备以下 C 语言编程主题的知识:

使用递归反转句子

#include <stdio.h>
void reverseSentence();
int main() {
    printf("Enter a sentence: ");
    reverseSentence();
    return 0;
}

void reverseSentence() {
    char c;
    scanf("%c", &c);
    if (c != '\n') {
        reverseSentence();
        printf("%c", c);
    }
}

输出

Enter a sentence: margorp emosewa
awesome program

该程序首先打印 Enter a sentence: . 然后, 调用 reverseSentence() 函数。

该函数将用户输入的第一个字母存储在 c. 如果变量是 \n (换行) 以外的任何字符, 则再次调用 reverseSentence() 函数。

这个过程一直持续到用户按下回车键。

当用户按下回车键时,该 reverseSentence() 函数从最后开始打印字符。