java输入一个数n,计算n的阶乘(5的阶乘=1*2*3*4*5) 1、首先要理解一下阶乘的公式:n。n*(n-1)*(n-2)*.*2*1,5!5*4*3*2*1include/头文件stdio.h在新浪博客中无法显示加上就可以了int main(){int t=5,i=4;要是求其他的数的阶乘的话,把t的值改为其他数,再把i改为(t-1)就行了while(i>;=1){t=t*i;i-;}printf(\"5的阶乘结果是:%d\\n\",t);return 0;}2、运行结果如下:3、上面这种方法虽然能求出结果,但是不能求任意的数,也没有考虑到0!1,这种情况,我们来改进一下;include/头文件stdio.h在新浪博客中无法显示加上就可以了int main(){int n,jc;int jiecheng(int j);printf(\"请输入任意一个整数\\n\");scanf(\"%d\",&n);jc=jiecheng(n);printf(\"该数的阶乘结果是:%d\\n\",jc);return 0;}int jiecheng(int j){int i=j-1;if(j=0|j=1)/因为0的阶乘是1,1的阶乘也是1j=1;while(i>;1)/{j=j*i;i-;}return(j);}4、运行结果如下:
下面是我用java编的一个从键盘输入,求n阶乘的程序。出错了。帮改下阿 当在方法中声明变量后一定要为其初始化!或者在执行过程中为其初始化!但是初始化必需在调用之前完成!否则会出错!而类变量(属性)则不需要初始化,因为在类被装载时,类变量将自动被初始化!而方法中的变量是享受不到这样的服务的!所以必需显示初始化!一定要为m初始化才可以调用!
编写Java程序,实现接受用户输入的正整数,输出该数的阶乘。例如,输 按照你的要求编写的求阶乘的Java程序如下12345678910111213141516171819202122import java.util.Scanner;public class DDD { public static void main(String[]args){ System.out.print(\"请输入一个正整数(1~10)\");Scanner sc=new Scanner(System.in);int n=sc.nextInt();if(n|n>;10){ System.out.println(\"无效数据。return;} System.out.print(n+。int result=1;for(int i=1;i;i+){ result=result*i;if(i=n)System.out.print(i+\"=\");else System.out.print(i+\"x\");} System.out.print(result);}}运行结果请输入一个正整数(1~10)44。1x2x3x4=24