蓝桥杯第八届真题:取数位

点击查看:蓝桥杯历年真题 题解目录

取数位(代码填空)

蓝桥杯第八届真题:取数位_第1张图片

评测标准答案:f(x/10, k)
1.经过分析已知代码,第k位,为从做往右数,第k位。
2.因为 if(len(x)-k==0) return x%10;所以结果是最后一位(个位)
3. 每次删除个位,直到位数=k,此时个位就是第k位。
import java.util.*;
public class Main005{
     static int len(int x){
     if(x<10) return 1;
   	 return len(x/10)+1;
     }
     // 取x的第k位数字
     static int f(int x, int k){
     if(len(x)-k==0) return x%10;
   	 return f(x/10, k) ;  //填空
     }
     public static void main(String[] args){
    	int x = 23513;
         //System.out.println(len(x));
    	System.out.println(f(x,3));
     }
}

你可能感兴趣的:(蓝桥杯历届真题)