例子:

  要求:医务工作者通过广泛的调查和统计分析,根据成人的身高与体重因素给出了按“体质指数”进行判断的方法,具体如下:

  • 体质指数t=体重 w/(身高h)2(w的单位为kg,h的单位为m)
  • 当t<18kg/m2时,为低体重;
  • 当t介于18kg/m2和25kg/m2之间时,为正常体重;
  • 当t介于25kg/m2和27kg/m2之间时,为超重体重;
  • 当t>=27kg/m2之间时,为肥胖;

  编程实现:从键盘输入您的身高w和体重h,根据上述公式计算体质指数t,然后判断您的体重属于何种类型

  具体要求:

  1. 输入,输出要有提示信息,程序运行结果示例如下:

  请输入您的身高(单位为m):1.6

  请输入您的体重(单位为kg):50

  您的体重正常!(可以在基本框架上加以修改)

  2.选择合适的选择语句

  3.针对四种不同情况,分别输入不同数据得到不同结果,来进行验证这个程序正确性

  4.输入负数会得到什么?该怎么修改呢?

思路:

  分析整体可以得知这是一个范围性的选择,在这里 李同学用的是if...else语句,其实单用if语句也可以

  但是这次就用一种进行运行就好了 要记住 只要代码能跑 就不要再改了

  特别提醒:一定要注意运算符号的使用,不止加减乘除,更有与或非的灵活运用

  话不多说 上代码!!

#define _CRT_SECURE_NO_WARNINGS 1//在这里定义一个宏避免报错而已,但是李同学将后面的scanf都改为了scanf_s所以这里去掉也问题不大
#include<stdio.h>
#include<math.h>//因为李同学在代码中用到公式pow(,),所以加了一个定义数学函数
int main()
{
int t;//常规定义变量
float w, h, i;
printf("欢迎使用李同学写的检测体重是否在标准范围内的代码!\n");
{
printf("请输入您的身高(单位为m):");
scanf_s("%f", &h);
}
{
printf("请输入您的体重(单位为kg):");
scanf_s("%f", &w);
}//因为要根据题目的类型输出,所以李同学就直接用两个大括号将两部分隔开了,如果有别的做法欢迎斧正,感谢!!
{
i = pow(h, 2);//套用公式得出t值
t = w / i;
}
//进行判断t值范围,从而输出结果
if (t < 18)
{
printf("你也太苗条了吧,是时候要让自己吃的更好一点了\n");
} else if (18 <= t && t< 25)
{
printf("很不错喔,和李同学一样的标准体重喔,请继续保持!\n");
}
else if (25 <= t && t< 27)
{
printf("这位同学你似乎有点壮喔,超出标准体重一点点喔,请注意饮食!\n");
}
else if (t >= 27)
{
printf("这位同学,从今天开始就把自己的饮食控制好吧,从此变身万人迷!!\n");
}
else
{
printf("请不要戏弄我!!");
}
printf("欢迎您再次运行本程序,谢谢");
}

在这里就给出一组运行结果就好了:

  如果需要判定输入是否为正数时,可以在最外层再套一层判定,因为李同学没有实验过,欢迎纠错!感谢!

难度指数:一颗星

欢迎给出最优解!!

利用C语言判定用户输入数据从而给出结果(利用判定用户体重范围)同求最优解!!!的更多相关文章

  1. 利用try-catch代码检查用户输入数据是否是有效的浮点数超级详细

    package chapter6; //数据输入格式检查 import java.io.IOException; import java.util.InputMismatchException; im ...

  2. 利用C语言判别用户输入数的奇偶性和正负性

    要求:利用C语言判别用户输入数的奇偶性和正负性 提示:可以利用%求余数来判别 由题可知 我们需要if..else的结构来实现区分奇偶和正负 区分奇偶我们可以用: if (a % 2 == 0) { p ...

  3. 利用C语言判别输入数的位数并正逆序输出

    利用C语言判别用户输入数的位数并正逆序输出 #include <stdio.h> void main() {        int i, scanfNum, printfNum, temp ...

  4. 利用C语言结构体模拟一个简单的JavaBean

    利用C语言模拟一个Javabean 仅封装了,“无参构造函数”,“带参构造函数”,"toString方法" #include <stdio.h> struct User ...

  5. 利用UML语言建模--以图书馆管理系统为例

    一.基本信息 标题:利用UML语言建模--以图书馆管理系统为例 时间:2016 出版源:内蒙古科技与经济 领域分类:UML:RFID:图书馆:模型: 二.研究背景 问题定义:建立图书馆管理系统 难点: ...

  6. 利用R语言打造量化分析平台

    利用R语言打造量化分析平台 具体利用quantmod包实现对股票的量化分析 1.#1.API读取在线行情2.#加载quantmod包3.if(!require(quantmod)){4. instal ...

  7. 利用R语言进行交互数据可视化(转)

    上周在中国R语言大会北京会场上,给大家分享了如何利用R语言交互数据可视化.现场同学对这块内容颇有兴趣,故今天把一些常用的交互可视化的R包搬出来与大家分享. rCharts包 说起R语言的交互包,第一个 ...

  8. 第二次作业利用java语言编写计算器进行四则运算

    随着第一次作业的完成,助教 牛老师又布置了第二次作业:用java语言编写一个程序然后进行四则运算用户用键盘输入一个字符来结束程序显示统计结果.一开始看到这个题目我也着实吓了一跳 因为不知道如何下手而且 ...

  9. 利用C语言编辑画图程序的实现方法

    不知道大家在进行开发县级电网调度自动化系统的时候,是否都会遇到一个问题就是:要绘制一个电力系统一次接线图.大家都应该知道其实电力系统的一次接线图是较为复杂的,如果想要使用一般的编程方法来进行绘制的话, ...

随机推荐

  1. uni-app 富文本解析-小程序

    原文:http://www.upwqy.com/manual/info/105.html 1 引入插件 gaoyia-parse 链接:https://pan.baidu.com/s/1UusfXxH ...

  2. Go语言中的单例模式

    Go语言中的单例模式 在过去的几年中,Go语言的发展是惊人的,并且吸引了很多由其他语言(Python.PHP.Ruby)转向Go语言的跨语言学习者. Go语言太容易实现并发了,以至于它在很多地方被不正 ...

  3. Step By Step(Lua模块与包)

    Step By Step(Lua模块与包) 从Lua 5.1开始,我们可以使用require和module函数来获取和创建Lua中的模块.从使用者的角度来看,一个模块就是一个程序库,可以通过requi ...

  4. 优雅关闭springboot应用

    1.添加钩子函数,钩子函数中指定要调用的方法 @PostConstruct public void run() { this.zkClient.start(this); this.schedulerS ...

  5. h264和h265多维度区别

    h264和h265多维度区别 1.  概述 h265旨在在有限带宽下传输更高质量的网络视频,仅需原先的一半带宽即可播放相同质量的视频,很多朋友不知道h264和h265如何区别,下面让我们一起来了解一下 ...

  6. HiCar SDK概述

    HiCar SDK概述 HUAWEI HiCar SDK 是 HUAWEI HiCar(以下简称 HiCar )为汽车硬件设备提供的软件开发工具包,为汽车硬件厂商接入 HiCar 提供应用 API 接 ...

  7. Django-Auth模块之auth_user表

    一.Auth模块之auth_user表 在创建Django项目之后直接执行数据迁移命令会自动生成许多表. Django在启动之后就可以直接访问admin路由,需要输入用户名和密码,数据参考的就是aut ...

  8. centos使用yum安装docker

    1.先决条件 要安装 Docker 引擎,您需要 CentOS 7 或 8 的维护版本.不支持或测试存档版本. 该centos-extras库必须启用.默认情况下启用此存储库,但如果您已禁用它,则需要 ...

  9. 关于开箱即用的文档静态网站生成器VuePress

    关于VuePress 一个由Vue驱动的静态文档网站生成框架,具有开箱即用的优点. 给项目添加.gitignore .gitignore是git用来排除目录的清单,我们把以下目录加入其中,以便每次操作 ...

  10. Vue3全家桶升级指南一composition API

    1.setup() vue3中的composition API中最重要的就是setup方法了,相当于组件的入口,所有的composition API都必须放到setup()中的使用. setup是在组 ...