蓝桥杯java第八届第五题--取数位

    xiaoxiao2021-04-16  37

    标题:取数位 求1个整数的第k位数字有很多种方法。 以下的方法就是一种。 public class Main { 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; return ______________________; //填空 } public static void main(String[] args) { int x = 23513; //System.out.println(len(x)); System.out.println(f(x,3)); } } 对于题目中的测试数据,应该打印5。 请仔细分析源码,并补充划线部分所缺少的代码。 注意:只提交缺失的代码,不要填写任何已有内容或说明性的文字。

    解析:其实今年的题目这个算是简单的,分析一下,len函数就是计算一个字符串的长度的,如果k没有达到字符串的长度,就对10取余,就相当于得到字符串的最后一位,所以你的目的就是要把第k位的字符串的到,所以只要将x每次除以10,这样就少了一位,当k等于len的时候,就取余10得到k位的数字。

    答案:f(x/10,k)

    转载请注明原文地址: https://ju.6miu.com/read-672609.html

    最新回复(0)