新手。。求指教。。
刚编的程序。。看了几遍也不知道错在哪里。。问题是求2的阶乘与3的阶乘的和
#include <stdio.h>
long square(int a);
long factorial(int b);
int main()
{
long s;
s=factorial(square(2))+factorial(square(3));
printf(" %ld",s);
}
int square(int a)
{
a*=a;
return a;
}
int factorial(int b)
{
int c=1;
while(b--)
{
c*=b;
}
return c;
} 本帖最后由 哥斯拉不说话 于 2015-8-22 18:13 编辑
1. 为什么要写一个 square() 函数?
2. while(b--) 一句,当 b 为 1 时,b-- 为 1,然后 b-1,b 为 0, c *= b; 肯定为 0
#include <stdio.h>
long factorial(int b);
int main()
{
long s;
s = factorial(2) + factorial(3);
printf("%ld\n", s);
return 0;
}
long factorial(int b)
{
int c=1;
for(; b>1; b--)
c *= b;
return c;
}
页:
[1]