要求使用结构体类型表示人的相关信息。
/*
* Copyright (c) 2014,烟台大学计算机学院
* All right reserved.
* 作者:邵帅
* 文件:demo.cpp
* 完成时间:2014年12月17日
* 版本号:v1.0
*/
#include <iostream>
#include<string>
#include<iomanip>
using namespace std;
struct persion
{
char name[20];
char sex;
int hight;
double weight;
string state;
};
double s_weight(int h,char sex);
int main()
{
persion stu;
double s1_weight,how;
cout<<"请依次输入姓名、性别(M or F)、身高、体重:"<<endl;
cin>>stu.name>>stu.sex>>stu.hight>>stu.weight;
s1_weight=s_weight(stu.hight,stu.sex);
if (stu.weight>s1_weight*0.9 && stu.weight<s1_weight*1.1)
stu.state="正常";
else if (stu.weight>s1_weight*1.1 && stu.weight<s1_weight*1.2)
stu.state="过重";
else if (stu.weight>s1_weight*0.8 && stu.weight<s1_weight*0.9)
stu.state="过轻";
else if (stu.weight>s1_weight*1.2)
stu.state="肥胖,您超重:";
else if (stu.weight<s1_weight*0.8)
stu.state="体重不足";
how=((stu.weight-s1_weight)/(s1_weight))*100;
cout<<"姓名:"<<stu.name<<" 性别:"<<stu.sex<<" 身高:"<<stu.hight<<" 体重:"<<stu.weight<<"KG 状态:"<<stu.state;
if (stu.weight>s1_weight*1.2)
cout<<setprecision(3);
cout<<how<<"%";
}
double s_weight(int h,char sex)
{
double weight;
if (sex=='M')
weight=(h-80)*0.7;
else if (sex=='F')
weight=(h-70)*0.6;
return weight;
}
运行结果:
@ Mayuko
原文:http://blog.csdn.net/mayuko2012/article/details/41981903