//求n的阶乘
#include<stdio.h>
int main()
{
int i = 0;
int n = 0;
int ret = 1;
scanf("%d",&n);
for ( i = 1; i <=n; i++)
{
ret = ret * i;
}
printf("%d",ret);
return 0;
}
解题思路:
首先定义i来决定循环次数,定义n,给n一个位置存放输入进来的数字,然后最后还需要有一个结果,我们把这个结果定义为ret。这里说明一下,i和n给一个默认初始值0,作用是防止没有初始值产生错误,作为我们的代码习惯,后面会有有用的赋值,给结果ret赋值1,是因为第一步使用结果我们做的是乘运算,如果为0的话就没有意义了。
scanf为输入值,接下来我们进入for循环,首先给i赋值1,来进行第一次循环每次循环自增1,直到第n次结束,同时每次循环,我们的ret*i实现了阶乘的运算。
运行示例:输入3,输出3的阶乘6