初写JAVA的四道题(1)

计算BMI

我们先来看题目:

  • 写程序计算身体质量指数BMI,BMI=体重(千克)除以身高(米)的平方。
  • 输入体重(单位是千克)和身高(单位是米),输出BMI指数值,BMI指数值保留4位小数(提示:使用printf方法);
  • 根据BMI指数值再输出身体指数状况:
  • 如果BMI小于18.5,输出: It's underweight
  • 如果BMI大于等于18.5,且小于24,表示体重正常,输出: It's normal weight
  • 如果BMI大于等于24,表示体重偏重,输出: It's fat

输入样例:78 1.85

输出样例:The BMI is 22.7904

                It's normal weight

代码的开头:
 

public class Main//定义一个Main类,类名首字母大写,不能用数字开头
{
   public static void main(String[] args)//main方法
   {

   }

}

开头的代码需要有意识注意:class不能漏掉

然后根据题目,代码构成:1.输入体重和身高 2.计算BMI并格式化输出 3.判断bmi范围并输出相应的BMI评价

手动输入数据

Java里面手动输入数据,需要一个方法—————Scanner

Scanner是一个类包含了可以手动输入数据的方法,我们要使用一个规定的语句:

import java.util.Scanner;

加在代码的最开头(记得不要忘记分号哦)

代码中间的应用展示

Scanner wtht = new Scanner(System.in);

这句话的意思是 我们创建一个对象 对象类型是Scanner ,这里面的除了wtht可更改,其他可以默认保持不动。

既然创建了对象,我们应该用两个变量来接收这个数据,那为什么是两个呢?因为输入需要我们输入体重和身高。

这里创建变量的语句:

double weight = wtht.nextDouble();
double height = wtht.nextDouble();

我们可以根据C语言的知识来大概推测这句话的逻辑:

. 在C语言中是访问结构体的成员变量,这里的就不是结构体了而是一个类,类名叫Scanner。那访问的是类里面的一个函数,因为()在C语言中是函数调用符号。这里具体就不叫函数了,为了这个是方法的调用。

才疏学浅的我,暂时认为:一个叫函数一个叫方法,本质都是一个东西。只是为了区分Java育C语言。

所以这句话可以是:

创建一个变量(double类型)变量名是体重,接收wtht(Scanner类型)里的nextDouble方法赋予的值。

这个值恰好是由我们输入决定。

计算并且输出BMI

根据题目所示公式:

BMI = weight / height ^ 2

这个好写:

double a = height * height;
double bmi = weight / a;

输出bmi这个涉及print系列语句

System.out.printf("The BMI is %.4f\n",bmi);

System.out.printf

翻译为:系统输出 printf “f” == fomat 格式化输出(为什么格式化输出,这里题目上让我们保留四位小数输出)

系统输出这个格式是固定的。

范围的判断

if(bmi < 18.5)
            System.out.println("It's underweight");
 else if(bmi >= 18.5 && bmi < 24)
            System.out.println("It's normal weight");
 else if(bmi > 24)
            System.out.println("It's fat");

这个和C类似,就不再分析。

但是这里出现print系列的语句之一:
换行输出:println("      ");

可见,java里面输出什么使用print系列语句少不了前面的”系统输出“

完整代码参考:

import java.util.Scanner;

public class Main
{
    public static void main(String[] args)
    {
       Scanner wtht = new Scanner(System.in);
       double weight = wtht.nextDouble();
       double height = wtht.nextDouble();
        double a = height * height;
        double bmi = weight / a;
        System.out.printf("The BMI is %.4f\n",bmi);
        if(bmi < 18.5)
            System.out.println("It's underweight");
        else if(bmi >= 18.5 && bmi < 24)
            System.out.println("It's normal weight");
        else if(bmi > 24)
            System.out.println("It's fat");

    }



}

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值