C语言初学者遇到个问题

2025-05-21 02:26:55
推荐回答(2个)
回答(1):

程序判断有逻辑问题

int main()
{
    double num1;
    double num2;
    double num3;
    
    printf("血量值:");
    scanf("%lf",&num1);
    printf("攻击力值:");
    scanf("%lf",&num2);
    
    num3 = num1 - num2;  //num3 应该加到这里
    
    
    if(num1 > num2)
    {
        if(num3 < 200)
        {
            printf("濒临死亡");
        }
        
        printf("剩余血量值:%lf",num3);
    }
    else
    {
        printf("死亡");
    }
    
    return 0;
}

回答(2):

num3的计算在num1和num2的输入赋值之前,无法取得合理的运算结果,请将num3=num1-num2;这句移动到if之前