for循環
如題:
任務
我們有1,2,3...10不同面值的錢,使用for語句完成合計,看看我們一共有多少錢,請補充第8行代碼,實現該功能。
答案:
<script type="text/JavaScript">
var mymoney,sum=0;//mymoney變量存放不同面值,sum總計
for(mymoney=1;mymoney<=10;mymoney++)
{
? sum=sum+mymoney;
}
? document.write("sum合計:"+sum);
</script>
我的疑問:
sum=sum+mymoney;? 這個是怎么計算出來結果,我理解不明白!
2016-12-29
第一次循環:等號右邊的sum = 0,mymoney = 1; 加法的優先級高于賦值運算符,所以先算等號右邊的加法:sum+mymoney(也就是0+1),結果為1,然后將加法的結果賦給等號左邊的sum,此時sum的值被修改為1。
第二次循環:等號右邊的sum = 1(第一次循環結束后sum的值被賦為1),mymoney = 2(因為第一次循環結束后mymoney++); 加法的優先級高于賦值運算符,所以先算等號右邊的加法:sum+mymoney(也就是1+2),結果為3,然后將加法的結果賦給等號左邊的sum,此時sum的值被修改為3。
第三次循環:等號右邊的sum = 3(第二次循環結束后sum的值被賦為3),mymoney = 3(因為第一次循環結束后mymoney++); 加法的優先級高于賦值運算符,所以先算等號右邊的加法:sum+mymoney(也就是3+3),結果為6,然后將加法的結果賦給等號左邊的sum,此時sum的值被修改為6。
以此類推
2016-12-29
這個就是一個累加,初始沒開始計算錢總額的時候sum值mymoney值都為0,當計算1元紙幣的時候。總錢數就是1=0+1,當mymoney=2的時候,總錢數就是3=1+2,以此類推,其實說到累加你就應該可以明白了,