一只程序猫 发表于 2020-4-6 14:54:48

利用递归,反向打印

本帖最后由 一只程序猫 于 2020-4-6 15:41 编辑

/*
2020年4月6日14:01:17
目的 : 看程序
题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
1.程序分析:
*/
#include "stdio.h"
#include "conio.h"
main()
{
int i=5;
void palin(int n); //声明函数
printf("\40:");
palin(i);//进入函数
printf("\n");
getch();
}
void palin(int n)
{
char next;
if(n<=1)//每次判断 n 是否 = 1
{
    next=getchar();
    printf("\n\0:");
    putchar(next);
}
else
{
    next=getchar();
    palin(n-1);
    putchar(next);
}
}



不清楚原理

BngThea 发表于 2020-4-6 14:57:44

递归递归,有去有回,执行到递归位置时,后面的代码暂时挂起,等到回来的时候接着往下执行

一只程序猫 发表于 2020-4-6 15:40:26

BngThea 发表于 2020-4-6 14:57
递归递归,有去有回,执行到递归位置时,后面的代码暂时挂起,等到回来的时候接着往下执行

谢谢了 ,我自己 弄懂了 非常感谢
页: [1]
查看完整版本: 利用递归,反向打印