定义一个求n的阶乘的函数
#include<stdio.h>
int sum(int a,int x)
{
x=1;
scanf("%d",&a);
x=x*a;
a=a-1;
while(a>0)
{
x=x*a;
a=a-1;
}
return x;
} //这里是定义求a的阶乘的函数,a!=x
int main()
{
int n,m,d;
printf("请输入:");
if(n==0)
printf("1"); //0的阶乘是1
else
{
d=sum(n,m);
printf("%d\n",d);
}
return 0;
}
假设输入5,则结果如下图
#include<stdio.h>
int main()
{
int n,i,x=1;
scanf("%d",&n);
for(i=n;i>=1;i--) //i递减
{
x=x*n;
n=n-1;
}
printf("%d\n",x);
return 0;
}
#include<stdio.h>
int main()
{
int n,i,x=1;
scanf("%d",&n);
for(i=n;i>=1;i--) //i递减
{
x=x*i;
// n=n-1;
}
printf("%d\n",x);
return 0;
}
#include<stdio.h>
int main()
{
int a=1,i,n;
scanf("%d",&n);
for(i=1;i<=n;i++) //i递加
a=a*i;
printf("%d\n",a);
return 0;
}
假设输入5,则结果如下图
递归方法做法如下
#include<stdio.h>
int sss(int a)
{
int b;
if(a==0||a==1)
b=1;
else
b=sss(a-1)*a;
return b;
}
int main()
{
int m,n;
scanf("%d",&m);
n=sss(m);
printf("%d\n",n);
}
运行结果如下