编写递归函数digit(n,j),返回整数n的从右边开始的第j位数字
首先来看非递归法,只需用n/(10^(j-1))%10即可文章来源地址https://www.toymoban.com/news/detail-689982.html
#include<stdio.h>
//编写递归函数digit(n,j),返回整数n的从右边开始的第j位数字
int digit(int n,int j)
{
int i,s=1,result;
for(i=0;i<j-1;i++)
{
s*=10;
}
result=(n/s)%10;
return result;
}
int main()
{
int x,y;
printf("请输入n和j的值:");
scanf("%d%d",&x,&y);
int rev=digit(x,y);
printf("%d",rev);
return 0;
}
递归方法
int digit(int n,int j)
{
if(j==1)
{
return n%10;
}
return digit(n/10,j-1);
}
int main()
{
int x,y;
printf("请输入n和j的值:");
scanf("%d%d",&x,&y);
int rev=digit(x,y);
printf("%d",rev);
return 0;
}
文章来源:https://www.toymoban.com/news/detail-689982.html
到了这里,关于递归寻找第n位数字的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!