问题描述
- 计算一个数字N次幂的疑问。关于if语句。
-
这段代码是为了求数字的P次幂,N为数值,P为幂。
但是我调用power函数后,每次计算结果都为1。如果把标记星号的这几行删除,那么就可以正常计算,这里有个疑问,我的想法就是if为假,应该就直接跳过这段代码,但是实际好像不是这样。求解答。
代码如下:
double power(double n,int p)
{
double pow;
int i;
if(n=0) * * * * * *
pow=0; * * * * * *
if(p=0) * * * * * *
pow=1; * * * * * *
for(pow=1,i=1;i<=p;i++)
pow*=n;
return pow;
}
解决方案
double power(double n,int p)
{
double pow;
int i;
if(n=0) * * * * * * // 判断是否相等用n==0, 不是n=0
pow=0; * * * * * *
if(p=0) * * * * * *// 判断是否相等用n==0, 不是n=0
pow=1; * * * * * *
for(pow=1,i=1;i<=p;i++)
pow*=n;
return pow;
}
解决方案二:
删掉即可
解决方案三:
谢谢,新人没有悬赏分。。只能表示感谢了。 刚开始碰编程。低级错误。
解决方案四:
友情提醒题主,在c的math.h头文件中,已经自带了pow函数。
时间: 2024-11-08 19:02:38