public?class?JC?{
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
long?sum=0;
for(int?i=1;i<=20;i++){
long?num=1;?//為什么該語句改變位置后值發生改變
for(int?j=1;j<=i;j++){
num*=j;?//乘法
}
sum+=num;??//求和
}
System.out.println("1!+2!+3!+-->20!的值為:"+sum);
}
}
//為什么該語句改變位置后值發生改變??為什么呢?還有對于多個for的循環程序先執行內層for還是外層for呢?
1 回答

Zero_devourer
TA貢獻2條經驗 獲得超1個贊
long num = 1;改變是從哪里改到哪里?你先把局部變量概念和作用域看一看 然后就會明白差不多了 ,多個for循環,內層for循環相當于外層的一個子句,當然是先執行內層的了?
添加回答
舉報
0/150
提交
取消