问题标题: 酷町堂:酷町堂:啦啦啦(~ ̄▽ ̄)~(每日一送)

0
1
已解决
曹砚青
曹砚青
中级光能
中级光能

3987   BMI指数经验值:0

题目描述 Description

BMI指数(即身体质量指数),是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。
过轻(L):低于18.5
正常(N):18.5-23.9
过重(F):24-27
肥胖(VF):28-32
非常肥胖(VVF): 高于32
例如现在有一个人:
体重70kg
身高1.75m
他的BMI指数等于:70/(1.75*1.75) = 22.86,属于正常(N)。
现在有n个人,请你根据他的身高h和体重w,计算出他的BMI指数,输出身体状况。

输入描述 Input Description

第一行输入一个整数n(n<=1000)
接下来n行,每行输入两个整数h、w分别表示身高(cm)和体重(kg)

输出描述 Output Description

输出n行,表示每个人的身体状况

样例输入 Sample Input

1 175 70

样例输出 Sample Output

N

WC   0分? 

曹砚青在2020-09-28 20:10:21追加了内容

曹砚青在2020-09-28 20:15:59追加了内容
#include<iostream>
using namespace std;
int n,b;
struct bmi{
    int  h,w;
}a[1100];
int main(){
cin>>n;
for(int i=1;i<=n;i++){
    cin>>a[i].h>>a[i].w;
    b=a[i].w*1.0/((a[i].h/100)*(a[i].h/100));
    if(b<18.5) cout<<"L";
    else if(b>=18.5&&b<=23.9) cout<<"N"<<endl;
    else if(b>=24&&b<=27) cout<<"F"<<endl;
    else if(b>=28&&b<=32) cout<<"VF"<<endl;
    else if(b>32)cout<<"VVF"<<endl;
	}
	return 0;
}

 

曹砚青在2020-09-29 19:14:00追加了内容

改了一下,0分

#include<iostream>
using namespace std;
int n,b;
struct bmi{
    double h,w;
    int sum(){
        return w/(h/100*h/100);
    }
}a[1010];
int main(){
cin>>n;
for(int i=1;i<=n;i++){
    cin>>a[i].h>>a[i].w;
    for(int i=1;i<=n;i++){
     if(a[i].sum()<18.5) cout<<"L"<<endl;
     else if(a[i].sum()<=23.9) cout<<"N"<<endl;
     else if(a[i].sum()<=27) cout<<"F"<<endl;
     else if(a[i].sum()<=32) cout<<"VF"<<endl;
     else cout<<"VVF"<<endl;
	}
}
	return 0;
}

 


1
已采纳
李显晨
李显晨
中级启示者
中级启示者

这题要定义结构体函数

struct stu{
	double h,w;
	int sum(){
		return w/(h/100*h/100);
	}
}a[1010]; 

这题的输出不需要那么麻烦

for(int i=1;i<=n;i++){
     if(a[i].sum()<18.5) cout<<"L"<<endl;
     else if(a[i].sum()<=23.9) cout<<"N"<<endl;
     else if(a[i].sum()<=27) cout<<"F"<<endl;
     else if(a[i].sum()<=32) cout<<"VF"<<endl;
     else cout<<"VVF"<<endl;
}

望采纳,谢谢

李显晨在2020-09-29 19:18:39追加了内容
for(int i=1;i<=n;i++){
     cin>>a[i].h>>a[i].w;
     if(a[i].sum()<18.5) cout<<"L"<<endl;
     else if(a[i].sum()<=23.9) cout<<"N"<<endl;
     else if(a[i].sum()<=27) cout<<"F"<<endl;
     else if(a[i].sum()<=32) cout<<"VF"<<endl;
     else cout<<"VVF"<<endl;
}

我是先输入,在判断的,你把第二层循环删掉

李显晨在2020-09-29 19:23:56追加了内容

@曹砚青 

 

0
0
0
0
吴庞茂旭
吴庞茂旭
资深光能
资深光能

输出你确定是这样的吗?

0
0
张恩泽
张恩泽
高级天翼
高级天翼
sum=b[i]*100*100/a[i]/a[i];

送你一个友好的代码

最后输出完sum=0

0
丁博扬
丁博扬
中级天翼
中级天翼

我也不会

这题作业题我也是WA

等一下我来再试试

0
杜文博
杜文博
资深守护
资深守护

这是去年市赛第一题,很简单

我要回答