C中的Pow功能输出奇怪的值

时间:2016-09-22 02:18:41

标签: c pow

我在c中使用pow功能时遇到问题。以下代码:

#include <stdio.h>
#include <math.h>  

int main(int argc, char **argv) 
{
    double t;
    for(t = 2; t <= 7; t++)
    {
        double num = pow(7,t);
        printf("pi(%d) =",  pow(7,t));
    }
}

输出:

pi(1075576832) =pi(807) =pi(431) =pi(53) =pi(701) =pi(323)

而不是输出pi(49) = pi(7^3) =等等。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

那是因为错误的修饰符。将%f用于double个数字:printf("pi(%f) =", pow(7,t));