皇家驿站:求a的阶乘

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 23:06:17
给定a的值,输入a和m,求a*b和a的m阶乘的值?
int A;
main()
{int power(int);int b=3,c,d,m;
printf("Enter the number a and its power m:\n");scanf("%d,%d",&A,&m);
c=A*b;printf("%d*%d=%d\n",A,b,c);
d=power(m);printf("%d**%d",A,m,d);}
extern A;
power(int n)
{int i,y=1;
for(i=1;i<=n;i++)y*=A;return(y);}/*这个阶乘调用函数哪儿错了?*/
每次都不能运行出a的m次阶乘,就是那个阶乘代码出了错误?
注:第6行少写了一个%d
我想我找到答案了extern A,m;
power(int m)
{int i,y=1;
for(i=A;i<=m;i++)y*=i;return(y);}运行是正确的了,可是却把m也纳入extern,不知道这样程序好不好?

谢谢!!关系挺复杂的..

干嘛要用extern呢
int power(int n)
{
int i,y=1;
for(i=2;i<=n;i++)
y*=i;
return y;
}
不是就可以求n的阶乘了吗
调用时求5的阶乘,就写power(5) 就可以了