1到10的阶乘相加java编程问题

public class Factorial{
public static void main(String [] args){
int a=1;
int sum=0;
for(int i=1;i<11;i++){
a=1;
for(int j=1;j<=i;j++){
a=a*j;
}
sum=a+sum;
}
System.out.println(sum);
}
}
这程序是对的但是有的地方没看懂,谁来讲解一哈,就以加注释的形式把!

java里1到10的阶乘相加编程方法如下:

public class Factorial{                   //类

public static void main(String [] args){ //主方法

int a=1;                                //定义一个变量a  

int sum=0;                              //定义一个变量sum,把和存放在sum里

for(int i=1;i<11;i++){                  //做1-11循环

a=1;                                   //每次a都从1开始  

for(int j=1;j<=i;j++){                 //求每个数的阶乘

a=a*j;                                  

sum=a+sum;                             //每个数的阶乘求好后都加入sum

}

System.out.println(sum);                //输出和sum

}

}

Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-25
public class Factorial{ //类
public static void main(String [] args){ //主方法
int a=1; //定义一个变量a
int sum=0; //定义一个变量sum,把和存放在sum里
for(int i=1;i<11;i++){ //做1-11循环
a=1; //每次a都从1开始
for(int j=1;j<=i;j++){ //求每个数的阶乘
a=a*j;
}
sum=a+sum; //每个数的阶乘求好后都加入sum
}
System.out.println(sum); //输出和sum
}
}本回答被网友采纳
第2个回答  2013-04-21
该程序比较繁琐,可以简化成如下,public class Factorial{
public static void main(String [] args){
int a=1;//从1开始
int sum=0;//初始化SUM
for(int j=1;j<11;j++){//循环10次
a=a*j;//每个数的阶乘
sum=a+sum;//阶乘结果
}
System.out.println(sum);//输出结果
}
}
第3个回答  2019-03-10
package beijihu;//这一句是一个包名,可以删掉
/**
* 阶乘 这里用了递归的思想,我在这里打了注释,所以复制粘贴就可以用了
*/
public class TestDiGui2 {//这个是类名,可以随意更改
public static void main(String[] args) {
System.out.println("10的阶乘:"+a(10));
System.out.println("9的阶乘:"+a(9));
System.out.println("8的阶乘:"+a(8));
System.out.println("7的阶乘:"+a(7));
System.out.println("6的阶乘:"+a(6));
System.out.println("5的阶乘:"+a(5));
System.out.println("4的阶乘:"+a(4));
System.out.println("3的阶乘:"+a(3));
System.out.println("2的阶乘:"+a(2));
System.out.println("2的阶乘:"+a(1));
}
static long a(int n) {//这里的方法名我用了a来代替,你也可以尝试用别的来代替
if(n==1) {
return 1;
}else {
return n*a(n-1);
}
}
}
第4个回答  2015-09-08
public class Factorial{ //类
public static void main(String [] args){ //主方法
int a=1; //定义一个变量a
int sum=0; //定义一个变量sum
for(int i=1;i<11;i++){ //做1-10循环
a=1; //每次a都从1开始
for(int j=1;j<=i;j++){ //求每个数的阶乘
a=a*j;
}
sum=a+sum; //每个数的阶乘求好后都加入sum
}
System.out.println(sum); //输出阶乘的和sum
}
}