成都软件开发:怎么用C语言编写一个求解幂函数的程序

其实在绝大多数C语言编译器内部是有幂函数这个函数的,具体的指令是pow(a,b),这个指令实现的功能就是求解a^b的值,也就是求解a的b次方。

例如,假如我们要求解6的7次方,并把最终的结果存入变量result,那么我们可以这样子写代码:

include <math.h>       //添加数学运算的头文件

result= pow(6,7);        //求解6的7次方,结果存入result

但是,如果我们自己要编写这样的一个幂函数该怎么样编写呢?

首先我们需要进行一些数学运算方法的思考,假如要求解x^n, n>0且n为整数。那么应当是这样的:

当n=0时,x^n=x^0=1;

当n=1时,x^n=x^1=x;

当n>1时,x^n=x*x…,就是把n个x相乘。这样就可以得到本案中的幂函数的计算流程如图 1。

成都软件开发:怎么用C语言编写一个求解幂函数的程序

在这个程序里面,我们可以使用if条件指令进行判断在n=0,n=1或者n>1的情况下分别进行计算。

特别指出的是,当n>1时,用到for循环函数,n有多大就利用for循环进行(n-1)次的乘法运算。(承接软件开发业务-Q-Q: 2531-26-3726)那么编写的程序如下:

unsigned int pow1(unsigned int x,unsigned int n)      //求解幂函数,n为正整数

{

unsigned char i=0;

if(n==0)  x=1;            //当n=0时,x=1

else

       {

       if(n==1)  x=x;     //当n=1时,x=x

       else                      //当n>1时,用for循环多次相乘

              {

              for(i=2;i<=n;i++)

                     {x=x*x;

                     }

              }

       }

return x;                            //将计算结果返回

}

在程序中其他部分调用函数pow1就能进行幂函数运算。例如求解9的11次方,结果存入变量result,那么可以像这样调用指令pow1进行计算:

result=pow1(9,11);

这样自己编写的一个幂函数就完成了。更多精彩内容,尽在微-信公-众号:yonkotech