【查找数字x第k为上的数字】

#include<stdio.h>
#include<math.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 / pow(10, len(x) - k), k);  
}
    
int main()
{
    int x, k;
    printf("请输入数字和查找位置:");
    scanf("%d %d", &x, &k); 
    printf("位置 %d 上的数字为 :%d\n", k, f(x,3));
    return 0;
}

 

posted @ 2017-04-12 08:06  天秤libra  阅读(168)  评论(2编辑  收藏