思路:
首先用gets函数从标准输入流中读取一行字符串;
定义一个函数用来逆序输出字符串;
定义函数思路:
在禁用循环语句的情况下,每次输出字符串的最后一个字符,可以用递归来实现;
然后思考递归的出口(基线条件——不再调用自己)与每次递归调用的操作(递归条件——函数调用自己);
出口:输出字符串的第一个字符
操作:输出一个字符并调用自己
理清出口与操作之后,我们需要一个变量来联系二者;
由于我们输出字符串中字符时是以字符型数组形式输出,即str[i],也就是说我们需要一个变量来输出字符,这个变量将把基线条件和递归条件联系起来;
基于此,出口变为:变量i<0(字符串为空);
操作:输出str[i],i自减然后进入下一层递归(i需要标记每次递归中字符串的最后一个字符);
不难想出这个变量可以通过strlen函数表示;
然后,我们最终整理出:每次通过strlen输出最后一个字符后让该位置为空,直到字符串为空