java练习题

练习题1:手机选号:根据用户输入的手机号来确认用户实际支付的价格

如果尾数为 8,需支付办卡费 50 元
如果尾数为 4,需支付办卡费用 0 元
如果是其他尾号, 需支付办卡费用 20 元

package demo;

import java.util.Scanner;

public class D1 {
    public static void main(String[] args) {
        System.out.println("请输入电话号码");
        Scanner s=new Scanner(System.in);
        String tel=s.nextLine();//String类型数据一般用nextLine()
        getPrice(tel);
    }

    public static void getPrice(String tel){

        if(tel.length()!=11){//判断手机号tel的长度
            System.out.println("格式不正确");
            return  ;
        }

        int price;
        char c=tel.charAt(10);//charAt(int index),返回指定索引处的字符
        switch (c){
            case 8:
                price=50;
                break;
            case 4:
                price=0;
                break;
            default:
                price=20;
        }
        System.out.println("需支付办卡费用"+price+"元");
    }
}
请输入电话号码
12345678910
需支付办卡费用20元

练习题2: 求任意自然数各位数之和

接收用户输入的任意自然数, 累计所有位数数字之和

package demo;

import java.util.Scanner;

public class D3 {

    public static void main(String[] args) {
        System.out.println("输入自然数");
        long l=new Scanner(System.in).nextLong();
        long sum=0;
        while (l!=0) {
            sum = sum+l%10;//l%10 最后一位的值
            l = l / 10;//小数点后舍掉,减一位
        }
        System.out.println(sum);
    }
}
输入自然数
123
所有位数数字之和为6

练习题3:将任意自然数各位数的平方组成一个新的数

如:

输入4114
输出161116

因为42为16,12为1。

public class Demo01 {
    public static void main(String[] args) {
        System.out.println(squareDigits(4114));
    }
    public static int squareDigits(int n) {
        String a="";
        int b=0;
        while(n!=0){
            a=((n%10)*(n%10))+a;
            n=n/10;
        }
        try {
            b = Integer.parseInt(a);
        }catch (NumberFormatException e){

        }
        return b;
    }
}
161116
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值