zoukankan      html  css  js  c++  java
  • 牢记每个死循环都要有跳出语句【这个要看】


    有一道简单的编程题

    题目: 计算增值税。开始选择纳税人种类:一般纳税人和小规模纳税人,然后计算: 如果是一般纳税人  提示输入 本月销项和进项税额 如果是小规模纳税人 提示输入营业额

    一般纳税人 增值税=(本月销项税额-进项税额)*0.17

    如果是小规模纳税人 增值税=营业额*0.03

    我写的是下面代码  一开始在49行没有加break语句,结果跳不出循环。

    View Code
     1 import java.util.Scanner;
    2
    3 public class Test {
    4
    5 /**
    6 * @param args
    7 */
    8 public static void main(String[] args) {
    9 Scanner sc = new Scanner(System.in);
    10 double a;// 营业额或者销项额
    11 double b;// 进项额
    12 double c = 0; // 增值税额
    13 int i = 0; // 选择项
    14
    15 do {
    16 System.out.println("请输入您的纳税人类型:\n1 一般纳税人\n2 小规模纳税人");
    17 sc=new Scanner(System.in);
    18 if (sc.hasNextInt()) {
    19 i = sc.nextInt();
    20 }
    21 } while (i != 1 && i != 2);
    22 if(i==2){
    23 while(true){
    24 System.out.println("请输入销售成本:");
    25 sc=new Scanner(System.in);
    26 if(sc.hasNextDouble()){
    27 if((a=sc.nextDouble())>0){
    28 c=a*0.03;
    29 break;
    30 }
    31 }
    32 }
    33 }else{
    34 while(true){
    35 System.out.println("请输入本月销项:");
    36 sc=new Scanner(System.in);
    37 if(sc.hasNextDouble()){
    38 if((a=sc.nextDouble())>0){
    39 while(true){
    40 sc=new Scanner(System.in);
    41 System.out.println("请输入本月进项:");
    42 if(sc.hasNextDouble()){
    43 if((b=sc.nextDouble())>0){
    44 c=(a-b)*0.17;
    45 break;
    46 }
    47 }
    48 }
    49 break;
    50 }
    51 }
    52 }
    53 }
    54 if (c >= 0) {
    55 System.out.printf("您应缴纳税额为%.2f", c);
    56 } else {
    57 System.out.printf("您应缴纳税额为0");
    58 }
    59 }
    60 }
    千里之行,始于足下 做自己热爱的工作,才能实现人生价值 热情在没有天赋的情况下,也能给予人巨大的力量
  • 相关阅读:
    Phoenix SQL总结
    awk基本用法
    集群性能调优-速度篇
    集群基准性能测试
    服务器基础环境搭建
    kafka命令行操作
    九、spring boot--JPA实现分页和枚举转换
    八、spring boot--mybatis框架实现分页和枚举转换
    七、spring boot开发web应用--mybatis-plus框架实现分页和枚举转换
    六、spring boot开发web应用--mybatis-plus为简化而生
  • 原文地址:https://www.cnblogs.com/zwl24/p/2369618.html
Copyright © 2011-2022 走看看