Возникли проблемы с pow () в C - PullRequest
0 голосов
/ 23 октября 2018

Я сейчас читаю онлайн версию Стивена Кочана "Программирование на С (3-е издание)".Одно из действий включает оценку уравнения:

Напишите программу, которая оценивает следующее выражение и отображает результаты (не забудьте использовать экспоненциальный формат для отображения результата): (3,31 x 10 -8 x 2,01 x 10 -7 ) / (7,16 x 10 -6 + 2,01 x 10 -8 )

Когда я пытаюсь это сделать, выход всегда равен 0,0000.Вот мой код.

#include <stdio.h>
int main (void) {
float result;
    result = (3.31 * pow(10,-8) * 2.01 * pow(10,-7)) / (7.16 * pow(10,-6) + 2.01 * pow(10, -8));
    printf ("%f", result);
    return 0;
}

Если я делаю что-то не так, укажите это.Если у вас есть какие-либо советы, скажите, пожалуйста.

1 Ответ

0 голосов
/ 23 октября 2018

Вы должны #include <math.h>

Кроме того, измените это на:

printf ("%e\n", result);

Возможно, вы также должны иметь

double result;

, потому что pow() возвращает double.

...