项目 内容
班级博客链接 19级信计班
作业要求链接 第四周作业
作业目标 java分支语句学习;掌握循环语句和条件语句等的形式和语法格式;运用语句结合问题分析编写程序
作业帮助我实现的学习目标 认识并掌握java的分支语句基本结构和使用;运用java语言编写java程序

题目1:

  • 模拟一个售票系统,通过判断购票者的年龄来决定票价,借此观察选择结构语句的运行流程。原价100元(0-6岁的儿童免费(包含6岁),7-12岁半价,其余全价)

  • 截图如下: 

  • 代码:
package emo;
import java.util.Scanner;
public class CostTest {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
      Scanner sc=new Scanner(System.in);
      System.out.println("请输入需要判断的年龄:");
      int age=sc.nextInt();
      if(age>=0&&age<=6){
          System.out.println("年龄在0-6岁之间,免费!");
          System.out.println("");
          System.out.println("您需要支付:0元。");
      }else if(age>=7&&age<=12){
          System.out.println("年龄在7-12岁之间,半价!");
          System.out.println("");
          System.out.println("您需要支付:50元。");
      }else if(age>13){
          System.out.println("不在打折范围内!");
          System.out.println("");
          System.out.println("您需要支付:100元。");
      }
    }
}
  • 运行结果:

 

题目2:

  • 假设影响小孩身高的因素有:父母的身高、性别及是否爱好体育锻炼有关,设faHeight和moHeight为父母身高,性别为sex,体育锻炼为sports,

  • 假设若爱好体育锻炼则身高可增加2%

    身高预测公式为:

    男性身高=(faHeight+moHeight)*0.54(cm)

    女性身高=(faHeight*0.923+moHeight)/2(cm)

    程序要求:屏幕提示请输入小孩的性别(男孩输入M,女孩输入F),通过if语句判断键盘输入的是M还是F,是否爱好体育锻炼也可通过类似的方式实现。

    此题需要思考如何判断输入的字符与M/F/Y/N等是否匹配。如性别可采用if(sex == 'M')的方式来判断是否为男性。
  • 截图如下:

  • 代码:
package emo;
import java.util.Scanner;
public class JudgeTest {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner sc = new Scanner(System.in); 
        System.out.println("请输入父母的身高(cm)");
        double faHeight=sc.nextDouble();
        double moHeight=sc.nextDouble();
        System.out.println("请输入孩子性别(M/F)");
        String sex = sc.next();
        System.out.println("请输入孩子是否喜欢运动(Y/S)");
        String sports = sc.next();
        double height;
        if(sex.equals("M")){
            if(sports.equals("Y")){
               height=(faHeight+moHeight)*0.54*1.02;
               System.out.println("您小孩的身高为:" + height);
            }else if(sports.equals("S")){
                height=(faHeight+moHeight)*0.54;
              System.out.println("您小孩的身高为:" + height);
            }
          }
         if(sex.equals("F")){
             if(sports.equals("Y")){
                 height=(faHeight*0.923+moHeight)/2*1.02;
               System.out.println("您小孩的身高为:" + height);
             }else if(sports.equals("S")){
                 height=(faHeight*0.923+moHeight)/2;
               System.out.println("您小孩的身高为:" + height);
             }
         }
      }
}
  • 运行结果:

 

拓展阅读:java分支语句

  • 学习心得:

①Java语言提供了两种判断语句:if语句和switch语句。这两种语句用于实现判断,当符合某些条件时执行某段代码,否则将不执行

②语法: if(条件判断语句){代码A;},当条件成立时执行代码A,如果条件不成立则不执行代码A,而是直接执行if的下一句;switch(表达式){
};, 表达式的计算结果可以是整型【不允许long类型】,可以是char,同时允许是字串类型[String],default的位置没有特殊要求,但是一定是所有的case值不相等时才会执行。但为了增强程序的可读性,一般写在所有case之后。

③java语言中有while、for和do-while循环语句。循环结构:循环就是重复做某一件事情。在Java程序中,循环控制即在某一情况下,控制程序重复执行某一条或多条语句,直到遇到终止条件为止。

while和do while 语句使用不同,while先判断再执行while可能一次都不执行循环体do while先执行后判断,如果条件为true,则执行下次循环;如果条件为false则终止循环。do while 至少执行一次循环体。

for循环:语法:for(表达式1;表达式2:表达式3){循环体;};for循环语句中,表达式之间用分号隔开,而不是逗号。

④for循环一般用于可以明确循环次数的场景中;while循环一般用于不能预先确定循环执行次数的场景中;do/while循环一般用于不能预先确定循环执行次数,同时要求循环体至少执行一次的场景中;在具体开发中一般使用for循环居多,因为for可以实现另外两种写法

posted on 2022-03-27 21:48  Ponnenult  阅读(24)  评论(0编辑  收藏  举报