![]() ①思路 8的8888次方, 就是8连续自乘8888次, 需要一个乘法的循环函数。 ~ ②程序 #include<studio.h> /*定义函数*/ double f (double x,int y) { int i,double s=1.0; for(i=0;i<y;i++)s=s*x; return s; } /*主函数*/ main () { double a=8.0,b=8888.0; printf('%f\n',f(a,b)); } ~ ③解释 double f (double x,int y) /*先定义函数f(x,y)为x的y次方。*/ { int i,double s=1.0; for(i=0;i<y;i++)s=s*x; /*(i=0;i<y;i++)表示计数,循环y次。 搭配s=s*x就变成了x连续自乘y次。*/ return s; /*将s的值返回给f(a,b), 至于实参(a,b)可不可以和形参用一样的字母(x,y),我还没试过,同样的字母,不知道程序会不会紊乱,好奇的朋友可以在编译器上试一下*/ } ~ 至于主函数部分纯属赋值 可以令x=8,y=8888 也可令x=6,y=6666 求6的6666次方。 函数公式的价值就在于可以重复利用! |
|