不知道大家在写 BMI 的题目时,有没有遇到甚麽问题呢?
我们今天就来讲解一下 BMI 的题目吧!
这是我写的程序码:
#include<stdio.h>
int main(){
float height, weight, BMI;
printf("请输入身高(m) 体重(kg),并用空白键区分>> ");
scanf("%f %f", &height, &weight);
BMI = weight / (height * height);
printf("BMI = %f,且", BMI);
if(BMI < 18.5)
printf("您的体重过轻");
else if(18.5 <= BMI && BMI < 24)
printf("您的体重适中");
else
printf("您的体重过重");
return 0;
}
这是输出结果:
当然可能因为每个人的思考模式不同,写出来的程序码也不一样。但只要能解决问题的程序,就是对的程序!!
先来讲讲写程序的思路:
1.我们可能需要宣告三个变数,分别是输入的身高体重,以及计算的 BMI,当然 BMI 这个变数也可以直接用计算式代替,但因为想要好懂一点,所以我用了 BMI 这个变数,而这三个变数可能会有小数点,所以我们宣告他为浮点数(float)。
2.scanf("%f %f", &height, &weight);
这一行两个输入变数之间是空格,所以我们输入时要按照身高(空格)体重(enter)的形式。
3.我们有三个条件需要判断,值得注意的是if(18.5<=BMI && BMI<24)
这一行,是 BMI 如果大於等於 18.5 且 BMI 小於 24 时为真,会往下执行。
以上就是我的思路~可以参考参考!!!
当然,这题相对简单,我们可以把条件都写满,也就是说我们计算出来的 BMI 数值一定会落在某一个判断式里面,在这个情况下我们就可以连用三个 if
:
#include<stdio.h>
int main(){
float height, weight, BMI;
printf("请输入身高(m) 体重(kg),并用空白键区分>> ");
scanf("%f %f", &height, &weight);
BMI = weight / (height * height);
printf("BMI = %f,且", BMI);
if(BMI < 18.5)
printf("您的体重过轻");
if(18.5 <= BMI && BMI < 24)
printf("您的体重适中");
if(BMI >= 24)
printf("您的体重过重");
return 0;
}
只是希望大家还是可以熟悉 if
跟 else
的搭配~
然而,当条件判断非常多的时候,我们或许可以使用"switch statement"会更有效率~
明天,就让我们来讲讲 switch statement~
<<: TypeScript 能手养成之旅 Day 12 泛用型别(Generics Types)
前言 Matplotlib 是一个把数据可视化的套件,他可以和 NumPy 一起连用,与 Matla...
前言 在筛选字串时,有不少选择提供我们使用,除了使用常见的直接比对字串的 includes 之外,还...
大家好~ 我是五岁~~~ 今天来把昨天的草稿整理一下~ 并让线条乾净点~以方便之後上色~ 我这次先用...
这个系列文即将进入尾声,是时候来验收一下前面所学到的东西了,虽然不会所有的功能都在此次实战演练中使用...
案例说明及适用场景 初期要上线使用odoo我最推荐的是费用核销模组 一方面可免除销售、采购、库存等较...