取位数 - 蓝桥云课 (lanqiao.cn)
题目描述
题目分析
由题意我们知道len中为现阶段长度,如果其与k相等也就是找到了正确的位数,否则就调用递归来进行搜索,每次搜索一位数。
#include <stdio.h>
// 求x用10进制表示时的数位长度
int len(int x){
if(x<10) return 1;
return len(x/10)+1;
}
// 取x的第k位数字
int f(int x, int k){
if(len(x)-k==0) return x%10;
return f(x/10,k);//填空
}
int main()
{
int x = 23574;
printf("%d\n", f(x,3));
printf("%d\n", f(893275,2));
}