C语言经典算法100例-027-用递归逆序输出字符

来源:互联网 发布:ubuntu home 改成英文 编辑:程序博客网 时间:2024/06/08 06:58

先来看题:

利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

1.分析,跟上一题相似,打印第5的字符前先递归打印第4个字符,直到第1个字符,然后从第1个字符依次打到第5个。

2.源代码:

#include <stdio.h>#include <stdlib.h>#include <conio.h>void print(int);int main(){    printf("Input chars:\n");    print(5);    printf("\n");    return 0;}void print(int n){    char next;    if(n==1)    {        next=getchar();        printf("Output chars:\n");        putchar(next);    }    else    {        next=getchar();        print(n-1);        putchar(next);    }}

注意,一定要在putchar()之前调用递归函数,另外注意:getchar()是从输入流中获取一个字符,所以输入的时候格式就是abcde,并非像scanf那样输入一个字符后,按回车或者Tab后再输入下一个字符。

0 0
原创粉丝点击