输入一个数字,使用循环求出该数字的阶乘。比如输入10。则显示:10! = 10*9*8*7*6*5*4*3*2*1 = 3628800
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输入一个数字,使用循环求出该数字的阶乘。比如输入10。则显示:10! = 10*9*8*7*6*5*4*3*2*1 = 3628800相关的知识,希望对你有一定的参考价值。
参考技术A #include<stdio.h>int main()
int a,answer=0,i;
scanf("%d",&a);
for(i=1;i<=a;i++)
answer=answer+i;
printf("%d",answer);
return 0;
我也在学,希望可以多讨论 参考技术B #include<stdio.h>
int main()
int a,answer=1,i;
for(i=1;i<4;i++)
answer*=(i+1);
printf("%d\n",answer);
return 0;
参考技术C 以C语言为例:
int i,jieguo//i 为你输入的数字,jieguo存放结果;
for(i=10;i>0;i--)//以你的10为例,可以让i等于你预定或者输入的数字,每次循环递减1 知道为零
jieguo=jieguo*i;
//现在jieguo中就是你要的结果
用for循环求数的阶乘
1 问题
如何用for循环求数的阶乘,接收用户输入的数字,计算该数字的阶乘结果。
2 方法
package cn.cxy.exec; import java.util.Scanner; public class Factorial public static void main(String[] args) System.out.print("输入整数,求阶乘:"); int n = new Scanner(System.in).nextInt(); //调用f()方法,把n的值传递到f()方法,求阶乘 f(n); public static void f(int n) if(n<0) System.out.println("负数不可以求阶乘"); return;//方法结束,返回到调用位置继续执行 if(n == 0) System.out.println("0的阶乘是1"); return; /* long r = n; for(int i=n-1; i>=1; i--) r *= i; System.out.println(n+"的阶乘:"+r); |
3 结语
使用for循环来求数的阶乘是有用的,能够快速的解决我们的问题,使我们的学习生活变得简单。
以上是关于输入一个数字,使用循环求出该数字的阶乘。比如输入10。则显示:10! = 10*9*8*7*6*5*4*3*2*1 = 3628800的主要内容,如果未能解决你的问题,请参考以下文章