首页 > 编程语言 >C++入门之项目实战——BMI指数计算

C++入门之项目实战——BMI指数计算

时间:2024-04-05 10:29:20浏览次数:27  
标签:BMI 入门 weight bmi C++ height 表达式 cout

前言

本篇阅读之前,如果是新来的,请看看作者大大前面的文章。(别问我为什么,哈哈哈)

实战

什么是BMI?

所谓BMI,是Body Mass Index的缩写,即身体质量指数,是国际上常用的衡量人体肥胖程度的重要标准。BMI是通过我们人体体重与身高这两个数值来获取的,可有效评判一个人的健康营养状况。

我们又该如何计算呢?

它的计算方法也很简单,即BMI = 体重(kg)÷ 身高²(m)

得出BMI指数后,如何判段自己是在哪个区间呢

根据世界卫生组织所给出的亚洲BMI标准,我国制订了中国参考标准。快来看看自己属于哪个梯队的成员。下图:

有此,便开始编程序了!

首先初始化:

#include <iostream>
using namespace std;
int main() {

    double bmi; 
    float height,weight;

    return 0;
}

这里定义了三个个浮点变量,用于存放身高,体重和BMI指数,至于C++数据类型,请看下表:

 

接着往下看,下面需要获取用户输入的内容,请看下图:

cout << "请输入身高:";
cin >> height;
cout << "请输入体重:";
cin >> weight;

获取输入后,便开始计算:
 

bmi = weight / (height * height);

根据上表,我们便要开始判断用户是在哪个区间,如何判断?这是便要引入一种新的概念:

if(布尔表达式 1)
{
   // 当布尔表达式 1 为真时执行
}
else if布尔表达式 2)
{
   // 当布尔表达式 2 为真时执行
}
else if(布尔表达式 3)
{
   // 当布尔表达式 3 为真时执行
}
else 
{
   // 当上面条件都不为真时执行
}

填入条件,便可以出现一下代码:

if (bmi < 18.5) {
    cout << "过轻";
}
else if (bmi >= 18.5 && bmi < 24) {
    cout << "健康";
}
else if (bmi >= 24 && bmi < 28) {
    cout << "超标";
}
else if (bmi >= 28) {
    cout << "肥胖";
}

完整代码:

#include <iostream>
using namespace std;
int main() {

    double bmi; 
    float height,weight;
    cout << "请输入身高:";
    cin >> height;
    cout << "请输入体重:";
    cin >> weight;

    bmi = weight / (height * height);

    if (bmi < 18.5) {
        cout << "过轻";
    }
    else if (bmi >= 18.5 && bmi < 24) {
        cout << "健康";
    }
    else if (bmi >= 24 && bmi < 28) {
        cout << "超标";
    }
    else if (bmi >= 28) {
        cout << "肥胖";
    }
    return 0;
}

片尾

因为这篇文章是面向新手小白的,所以并没有更好的switch语句。都看到这里,给作者大大一个免费的关注吧!
 

 

标签:BMI,入门,weight,bmi,C++,height,表达式,cout
From: https://blog.csdn.net/wangxianshen_666/article/details/137391863

相关文章

  • 【leetcode面试经典150题】12.O(1) 时间插入、删除和获取随机元素(C++)
    【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主,题解使用C++语言。(若有使用其他语言的同学也可了解题解思路,本质上语法内容一致)【题目描述】实现RandomizedSet 类:......
  • 【蓝桥杯选拔赛真题56】C++求位数 第十四届蓝桥杯青少年创意编程大赛 算法思维 C++编
    目录C++求位数一、题目要求1、编程实现2、输入输出二、算法分析三、程序编写四、程序说明五、运行结果六、考点分析七、推荐资料C++求位数第十四届蓝桥杯青少年创意编程大赛C++选拔赛真题一、题目要求1、编程实现给定一个正整数N(1<N<10^8),输出N为几位数2、......
  • 原创c++小游戏《扫雷但是地狱难度》1.0.1版本
    这个扫雷非常难,2500个格子,500个雷#include<bits/stdc++.h>usingnamespacestd;charm[51][51],rm[51][51];intbombs=500;//intbxy[501][501];intd[8][2]={{0,1},{0,-1},{1,1},{-1,1},{1,0},{-1,0},{-1,-1},{1,-1}};voidtancha(intx,inty){ intt=0; if(rm[x+1......
  • 中间件 ZK分布式专题与Dubbo微服务入门 7-2 搭建maven工程,建立curator与zkserver的连
    0课程地址https://coding.imooc.com/lesson/201.html#mid=12839 1重点关注1.1本节内容使用curator建立和zkServer的连接java用法STS搭建maven工程 1.2关键代码/***同步创建zk示例,原生api是异步的,推荐第1,2种写法......
  • c++排序大全
    1#include<iostream>2usingnamespacestd;3intmain(){4inta[10]={3,6,1,5,4,8,7,10,9,2};5for(intj=0;j<9;j++){6for(inti=j+1;i<10;i++){7if(a[j]>a[i]){8swap(a[j],a[i]);9......
  • 字符串函数【超级详细版】(入门必看!!!)
    字符串函数【超级详细版】(入门必看!!!)1.strlen的使用和模拟实现1.1strlen的使用1.2strlen的模拟实现2.strcpy的使用和模拟实现2.1strcpy的使用strcpy的模拟实现3.strcat的使用和模拟实现3.2strcat的模拟实现4.strcmp的使用和模拟实现4.1strcmp的使用4.2strcmp......
  • 深入理解C/C++的内存管理
    在C和C++中,高效的内存管理是编写性能优化和资源高效利用程序的关键。本文将深入探讨C/C++内存管理的各个方面,包括内存的分布、C语言和C++中的动态内存管理方式,以及new和delete操作符的使用C/C++内存分布C和C++程序的内存可以分为以下几个区域:栈(Stack):自动存储局部变量。当......
  • 我的C++奇迹之旅:值和引用的本质效率与性能比较
    文章目录......
  • 小猫爬山 C++题解
    小猫爬山内存限制:256MiB时间限制:1000ms标准输入输出题目类型:传统评测方式:文本比较题目描述Freda和rainbow饲养了N只小猫,这天,小猫们要去爬山。经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徒步走下山了(呜咕>_<)。Freda和rainbow只好花钱让它......
  • 小木棍 C++题解
    小木棍内存限制:1024MiB时间限制:1000ms标准输入输出题目类型:传统评测方式:文本比较题目描述乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不超过50。现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度。给出每......