java用for计算自然常数_java实现读入一个数n,计算其各位数字之和,用汉语拼音写出和的每一位数字...

今天看到一篇文章:【原始链接】

题目是“读入一个数n,计算其各位数字之和,用汉语拼音写出和的每一位数字”,是用c语言实现的。由于我目前正在学习java,所以想用java来实现下。

输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。

输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class Int_to_String {

public static void main(String[] args) {

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

try {

int sum = 0 ;

String str = br.readLine();

//解决超出int类型问题。将字符串用字符数组装起来。

char[] ch = str.toCharArray();

for (int i = 0 ; i 

//求和

sum +=  new Integer(""+ch[i]).intValue();

}

System.out.println(print_f(sum));

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if (br != null) {

br.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

public static String print_f(int sum) {

int k = 1;

int m = sum;

String str = "";

while (m >= 10) {

k *= 10 ;

m /= 10;

}

while(k != 0) {

str += int_to_String(sum / k)+" ";

sum %= k;

k /= 10;

}

return str.substring(0, str.length()-1);

}

//转换

public static String int_to_String(int n) {

String ss = "";

switch (n) {

case 0:

ss = "ling";

break;

case 1:

ss = "yi";

break;

case 2:

ss = "er";

break;

case 3:

ss = "san";

break;

case 4:

ss = "si";

break;

case 5:

ss = "wu";

break;

case 6:

ss = "liu";

break;

case 7:

ss = "qi";

break;

case 8:

ss = "ba";

break;

case 9:

ss = "jiu";

break;

default:

break;

}

return ss;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值