// ReverseString.cpp : 此文件包含 “main” 函数。程序执行将在此处开始并结束。
//
题目:采用递归实现字符串翻转
#include<stdio.h>
#include<string.h>
void reversedPrint(const char* str);
int main() {
char buffer[1024];
printf("请输入一串字符串:");
fgets(buffer, sizeof(buffer), stdin);
buffer[strcspn(buffer, "\n")] = 0;//去除末尾的换行符
printf("原始字符串为:%s\n", buffer);//打印原始字符串
printf("翻转后的字符串为:");
reversedPrint(buffer);//打印翻转后的字符串
printf("\n");
return 0;
}
void reversedPrint(const char* str) {
//如果字符串为空,则什么也不做
if (*str == '\0') {
return;
}
//递归打印剩余的字符
reversedPrint(str + 1);
//最后打印当前字符
printf("%c", *str);
}