浮点型其实就是带有小数部分,并不是一个整数,用double float来定义,%lf是打印浮点型小数用的,我不知道这个题目要保留几位小数,最终结果bmi我是保留两位小数的,本人也才刚学十来天,如有不足,请大佬多多指教
#include<stdio.h>
int main()
{
int gen = 0;//定义变量-性别
double weight;
double st;
double bmi;
//定义体重、身高
printf("请输入您的性别:(0代表男、1代表女)\n");
scanf("%d", &gen);
switch (gen)
{
case 0:
printf("请分别输入体重(kg)、身高(m)\n");
scanf("%lf %lf", &weight, &st);
bmi = weight / (st * st);
printf("%.2lf", bmi);
if (bmi <= 20)
{
printf("偏瘦 ");
}
if (bmi > 20 && bmi <= 25)
{
printf("适中");
}
if (bmi > 25 && bmi <= 30)
{
printf("偏重");
}
if (bmi > 30)
{
printf("肥胖");
}
break;
case 1:
printf("请分别输入体重(kg)、身高(m)\n");
scanf("%lf %lf", &weight, &st);
bmi = weight / st * st;
if (bmi <= 19)
{
printf("偏瘦 ");
}
if (bmi > 19 && bmi <= 24)
{
printf("适中");
}
if (bmi > 24 && bmi <= 39)
{
printf("偏重");
}
if (bmi > 39)
{
printf("肥胖");
}
break;
}
return 0;
}