格式的参数太多了。 C日食

时间:2017-03-17 17:54:32

标签: c eclipse arguments scanf

不知道我做错了什么。该程序运行但没有正确的数学公式.Plz帮助

#include <stdio.h>
    #include <stdlib.h>
    #include "input.h"

    int main(void) {
        float peso, altura, imc;
        desativarBufferConsole();
        printf("\ndigite o seu peso em Kg");
        scanf("%f", &peso);
        printf("\ndigite a sua altura em m");
        scanf("&f", &altura);
        imc = (peso)/(altura*altura);
        scanf("%f", &imc);
        printf("\no seu imc e: %f", imc);
        limpaBufferStdin();
        pausar();
        return 0;
    }

1 个答案:

答案 0 :(得分:1)

您在以下行中出现语法错误:

scanf("&f", &altura);

格式说明符应为%f而不是&f

因此,请将您的行更改为:

scanf("%f", &altura);

我想指出的另一件事是:

    imc = (peso)/(altura*altura);
    scanf("%f", &imc);
    printf("\no seu imc e: %f", imc);

在这里,您进行计算,将值存储在imc中,然后要求输入再次存储在imc中,从而丢失先前的计算值。这是一个逻辑错误,您应该自己解决。