如何解决iso c ++禁止在指针和整数之间进行比较,如果if语句与字母进行比较
我正在尝试编写一种算法,通过介绍性别,年龄和身高来计算理想体重。我的问题显然是性别,因为它不是数字字符。我尝试用char引入它,然后,由于男女的理想体重有所不同,因此我尝试为每种性别做出if陈述。 但是,我用来检查数值变量和常量之间是否相等的常规方法在这里不起作用。我有点期待,但是尽管如此,我还是不知道如何解决。我提到我是一个初学者,我对它为什么不起作用没有很好的了解。我在该主题上阅读的其他答案提到使用“字符串”来引入字母字符。我试了一下,以至于无法确定我是否按预期进行了,在我的程序进行计算的同时,它遍历了最后一个if语句,就好像它是真实的一样,尽管它不是。
int main()
{
int h,age;
char sex;
float masa;
printf("introdu inaltimea: \n");
scanf("%d",&h);
printf("introdu varsta: \n");
scanf("%d",&age);
printf("introduce sexul [M/F]: ");
scanf("%s",&sex);
masa=50 + 0.75*(h-150) + (age-20)/4.00;
if(sex=="M")
{
cout<<"masa ideala este "<<masa;
}
else
masa=masa-10;
cout<<"masa ideala este "<<masa;
return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。