相关疑难解决方法(0)

实现基于整数的幂函数pow(int,int)的最有效方法

将整数提升到C中另一个整数的幂的最有效方法是什么?

// 2^3
pow(2,3) == 8

// 5^5
pow(5,5) == 3125
Run Code Online (Sandbox Code Playgroud)

c algorithm math exponentiation

239
推荐指数
8
解决办法
19万
查看次数

如果赋值为整数,则pow()的返回值会向下舍入

pow在C中使用函数并将返回值存储为整数类型.请参阅下面的代码段:

for (i = 0; i < 5; i++){
    val = (int)pow(5, i);
    printf("%d, ", val);
}
Run Code Online (Sandbox Code Playgroud)

这里i,val是整数,输出是1, 5, 24, 124, 624.我相信这是因为浮点数25被视为24.99999 ...在分配给整数时会向下舍入到24.

如果我仍然需要将返回值存储在int中,我怎么能通过这个?

c pow

6
推荐指数
2
解决办法
6896
查看次数

标签 统计

c ×2

algorithm ×1

exponentiation ×1

math ×1

pow ×1