C语言中math.c库文件提供了幂函数pow()。但今天我们来简单实现一个幂函数。我们分为几个步骤来实现。
一、分析算法
求正整数的幂,需要把整数n相乘,如2的3次幂,即2*2*2,将整数2相乘3次。多个数反复执行相同的操作,自然就会想到使用循环。如何进行循环,看如下代码示例
for(i=1;i=p;i++)
pow*=n;
上述示例中,n值表示的是所求的数,pow则是n的p次幂,p为幂。带入数字进行验证,假设n=2,p=3,表示求2的3次幂
第一次循环,pow=pow*n,即pow=1*2=2
第二次循环,pow=pow*n,即pow=2*2=4
第三次循环,pow=pow*n,即pow=4*2=8
二、函数实现
使用函数实现,主要考虑两个问题:
1.函数的参数是什么
函数的参数可以从功能考虑,主要是求某个数的多少次方,那参数其实就两个:一个是数值,另一个是多少次幂。在这个例子中,使用double类型表示所求数值,可以求整数或浮点数;使用int表示求整数次幂。
2.函数的返回值是什么
在该例子中,使用函数后肯定会返回一个结果,对于整数是整型,对于浮点数是double型,所以返回值使用return返回double类型。
所有函数声明如下:
doublepower(doublen,intp);
三、代码实现
运行结果:
四、结语
C语言中math.c提供了更为强大的幂函数pow()。本例中主要是通过一个简单版的幂函数实现,分析一个函数如何实现。