递归案例(C语言)逆序输出数字

  • Post author:
  • Post category:其他


思路:假设输入1234,则先输出个位数4,再为十位数3,百位数2,千位数1。

(1)我们只要将1234%10,即可得到个位数4

(2)接下来的目标是取得十位数3,我们通过将1234/10,可以得到123,再用123%10,得到十位数3

(3)接下来的百位数和千位数,也是同理,从个位数到十位数百位数千位数的传递,我们通过递归的方式完成。

代码如下:

#include<stdio.h>

int f(int n){


if(n==0)return 0; //递归循环终止条件

else{


printf(“%d”,n%10); //取末位数并输出

f(n/10);           //传递到上一位

}

}

int main(){


int f(int n);  //函数声明

int n;

printf(“请输入一个数n:”);

scanf(“%d”,&n);

f(n);

}

运行截图如下:



版权声明:本文为weixin_52482923原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。