请问如何用定义指针的方法编写任意一个数的阶乘?这个数由键盘中获取.麻烦写出示例代码.

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/09 10:53:51
请问如何用定义指针的方法编写任意一个数的阶乘?这个数由键盘中获取.麻烦写出示例代码.

请问如何用定义指针的方法编写任意一个数的阶乘?这个数由键盘中获取.麻烦写出示例代码.
请问如何用定义指针的方法编写任意一个数的阶乘?这个数由键盘中获取.麻烦写出示例代码.

请问如何用定义指针的方法编写任意一个数的阶乘?这个数由键盘中获取.麻烦写出示例代码.
要用到指针变量么?
 #include "stdio.h"
void getFact(int n,int *fact)// 函数功能是计算n的阶乘,然后存到fact指向的变量里去
{
    int i,sum=1;
    if(n==1||n==0)
        *fact=1;
    for(i=1;i<=n;i++)
         sum*=i;
    *fact=sum;
}
int main()
{
    int n,sum;
    int *p=&sum;
    scanf("%d",&n);
    getFact(n,p);
    printf("%d!=%d\n",n,*p);//这儿*p改成sum也是一样的
}
结果: