C语言计算身高结果为0

求大niu们能指点一下为啥计算结果为0

img


#include<stdio.h>
int main()
{
    float faheight, moheight;/*定义变量,faheight为父亲身高,moheight为母亲身高*/
    char sex, sports, diet, height;/*定义性别,运动,饮食,体重*/
    printf("请输入您孩子的性别[男生输入m,女生输入w]:");
    scanf_s("%c", &sex);
    getchar();
    printf("您是否经常运动[是填y,否填n]:");
    scanf_s("%c", &sports);
    getchar();
    printf("您是否饮食规律[是填q,否填k]:");
    scanf_s("%c", &diet);
    getchar();
    printf("请分别输入父亲母亲身高,中间以逗号分开:");
    scanf_s("%f,%f", &faheight,&moheight);/*输入语句*/
    getchar();

    if (sex == 'm')
    {
        if (sports == 'y' && diet == 'q')
        {
            height = (faheight + moheight) * 0.54 * (1 + 0.035);
        }
        else if (sports == 'y' && diet == 'k')
        {
            height = (faheight + moheight) * 0.54 * (1 + 0.02);
        }
        else if (sports == 'n' && diet == 'q')
        {
            height = (faheight + moheight) * 0.54 * (1 + 0.015);
        }
        else if (sports == 'n' && moheight == 'k')
        {
            height = (faheight + moheight) * 0.54;

        }
        
    }
    if (sex == 'w')
    {
        if (sports == 'y' && diet == 'q')
        {
            height=((faheight * 0.923 + moheight) / 2 )* (1 + 0.035);
            
        }
        else if (sports == 'y' && diet == 'k')
        {
            height = ((faheight * 0.923 + moheight) / 2) * (1 + 0.02);
        }
        else if (sports == 'n' && diet == 'q')
        {
            height = ((faheight * 0.923 + moheight) / 2) * (1 + 0.015);
        }
        else if (sports == 'n' && moheight == 'k')
        {
            height = ((faheight * 0.923 + moheight) / 2);
        }
        
    }
    printf("体重=%f", height);
    return 0;
}



height应该定义为float类型

height是char类型了,改为float类型