请用c语言编写程序,求fac=n!=1*2*3*...*n,n大于等于1小于等于10
答案:2 悬赏:20 手机版
解决时间 2021-03-30 03:02
- 提问者网友:骑士
- 2021-03-29 03:04
请用c语言编写程序,求fac=n!=1*2*3*...*n,n大于等于1小于等于10
最佳答案
- 五星知识达人网友:一把行者刀
- 2021-03-29 04:41
#include
int Fac(int n)
{
int sum=1;
while(n)
{
sum*=n;
--n;
}
return sum;
}
int main()
{
int n;
scanf("%d",&n);
printf("%d\n",Fac(n));
}追问可不可以发一下流程图追答我的函数流程图是这样的,大致写一下,可能不是很规范:
输入一个整数n,初始化一个变量sum=1,保存积
判断n>0,如果是,继续执行。如果不是,结束。返回积sum.
用sum=sum*n....也就是原来所得的积乘于n,再用得到的结果更新积..
4.把n-1
5.返回第2步。。。
具体的流程图得画框框什么的吧。。我这里不是很方便
int Fac(int n)
{
int sum=1;
while(n)
{
sum*=n;
--n;
}
return sum;
}
int main()
{
int n;
scanf("%d",&n);
printf("%d\n",Fac(n));
}追问可不可以发一下流程图追答我的函数流程图是这样的,大致写一下,可能不是很规范:
输入一个整数n,初始化一个变量sum=1,保存积
判断n>0,如果是,继续执行。如果不是,结束。返回积sum.
用sum=sum*n....也就是原来所得的积乘于n,再用得到的结果更新积..
4.把n-1
5.返回第2步。。。
具体的流程图得画框框什么的吧。。我这里不是很方便
全部回答
- 1楼网友:思契十里
- 2021-03-29 05:29
int n;
long area = 1L;
printf("请输入一个1——10之间的数字:");
scanf("%d",&n);
for(int i = 1 ;i < n; i ++ ) {
area *= n;
}
printf("%d的阶乘为:%l\n",n,area);追问可不可以发下流程图
long area = 1L;
printf("请输入一个1——10之间的数字:");
scanf("%d",&n);
for(int i = 1 ;i < n; i ++ ) {
area *= n;
}
printf("%d的阶乘为:%l\n",n,area);追问可不可以发下流程图
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯