java面试每日一题5

题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提 成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成 3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发 放奖金总数? 
1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    /**
     * @param args
     * @throws IOException 
     */
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        System.out.println("请输入月利润:");
        BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));
        long money=Integer.parseInt(buf.readLine());
        long base[]={100000,200000,400000,600000,1000000};
        int i;
        long sum=0;
        for(i=0;i<base.length;i++){
            if(money<=base[i]){
                break;
            }
        }
        switch(i){
        case 1:
            sum+=(money-1000000)*0.01;
            money=1000000;
        case 2:
            sum+=(money-600000)*0.015;
            money=600000;
        case 3:
            sum+=(money-400000)*0.03;
            money=400000;
        case 4:
            sum+=(money-200000)*0.05;
            money=200000;
        case 5:
            sum+=(money-100000)*0.1;
            money=100000;
        default:
            sum+=money*0.1;
        }
        System.out.println("应发奖金总数:"+sum);    
    }

}
原文地址:https://www.cnblogs.com/tjlgdx/p/5914214.html