首页 > 代码库 > java 面试每日一题3

java 面试每日一题3

题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

 

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Scanner;public class testThree {    public static void main(String[] args) throws IOException{        System.out.println("请输入a的值");        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));        int a=Integer.parseInt(br.readLine());        System.out.println("请输入b个数:");        BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));        int b=Integer.parseInt(br.readLine());        /*Scanner sc = new Scanner(System.in);        int a = sc.nextInt();*/        System.out.println("请输入b的值");//        int b = sc.nextInt();        int s=count_value(b,a);        System.out.println(s);    }private static int count_value(int i,int a){    if (i <= 0) {    return 0;    } else {    return a * i + count_value(i - 1,a) * 10;    }    }}

 

知识补充:BufferedReader 中read()和readLine()

read():
方法功能:读取单个字符。
返回:作为一个整数(其范围从0 到65535 (0x00-0xffff))读入的字符,也就是说是char型的ASCII码。是如果已到达流末尾,则返回-1。

readLine():
方法功能:读取一个文本行。通过下列字符之一即可认为某行已终止:换行(‘\n‘)、回车(‘\r‘) 或回车后直接跟着换行。
返回:包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回null

 

java 面试每日一题3