最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

一個(gè)簡(jiǎn)單,但是很困擾我的問題求教

一個(gè)簡(jiǎn)單,但是很困擾我的問題求教

天窗的螞蟻 2016-01-29 09:34:12
我先完整的敘述一下我的疑問點(diǎn),希望能得到大家的幫忙。這是求1+2+3.....+100的和,輸出的結(jié)果也是5050。我想問一下,在while循環(huán)里面,sum每次的值是多少?比如,一開始,n=1,sum=sum+n,即0=0+1,這時(shí)sum就等于123了。n++后,n=2了。sum=sum+n,這時(shí)sum的值是0呢還是1呢?sum=1+2,sum變成3了。n++,n變成3了,sum=sum+n,即sum=3+3,sum變成了6。以此類推。我的疑問就是,在每一次循環(huán)里,sum=sum+n這個(gè)等式里,第二個(gè)sum的值是不是上一次循環(huán)得到的值,還是一直保持為0。如果是上一次循環(huán)得到的值,那么sum一系列下來,就應(yīng)該等于sum=1,3,6,10.....5050。這個(gè)我把sum=sum+n后面加了一個(gè)"<br/>"。輸出的結(jié)果是1234567789.....100。也即是說n=1時(shí),sum=sum+n,即0=0+1,sum=1了。n=2時(shí),sum=sum+n,即0+2=2,sum=2.以此類推。那么跟上面得到的sum=1,3,6,10.....5050矛盾了。sum=sum+n這個(gè)等式中,第二個(gè)sum的值到底是0還是上一次循環(huán)得到的值
查看完整描述

7 回答

已采納
?
pardon110

TA貢獻(xiàn)1038條經(jīng)驗(yàn) 獲得超227個(gè)贊

第二個(gè)sum值是上一次循環(huán)得到的值,我這樣寫,你就會(huì)明白了。

var?n=1;
var?sum=0;
while(n?<=?5)
{
??//console.log(sum);
??sum?=?sum+n+"<br/>";
??n++;
??console.log(sum);?????????//?循環(huán)內(nèi)部打印???
}
console.log(sum);????????????//?循環(huán)外部打印

結(jié)果如下

1<br/>????????????????????????
1<br/>2<br/>
1<br/>2<br/>3<br/>
1<br/>2<br/>3<br/>4<br/>

1<br/>2<br/>3<br/>4<br/>5<br/>

問題在于字符“<br/>”,sum+n+"<br/>" 所得結(jié)果是一個(gè)字符串拼接,每次循環(huán)即是字符串拼接,而非是算術(shù)計(jì)算。 你直接使用循環(huán)外打印就會(huì)出現(xiàn)1?。病。场。础。怠。撁鎸?shí)際換行顯示)

查看完整回答
反對(duì) 回復(fù) 2016-01-29
?
慕粉3311984

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊

那個(gè)能不能那個(gè)五子棋的源代碼給我啊,

查看完整回答
反對(duì) 回復(fù) 2016-05-30
?
weibo_微天下微生活_0

TA貢獻(xiàn)3條經(jīng)驗(yàn) 獲得超0個(gè)贊

什么亂七八糟的,n=2時(shí),sum怎么就0+2了,sum=0的值又不在循環(huán)語句中

查看完整回答
反對(duì) 回復(fù) 2016-01-30
?
miku61

TA貢獻(xiàn)3條經(jīng)驗(yàn) 獲得超2個(gè)贊

sum-sum+n+"<br/>"

我知道想要的表達(dá)是將每次的sum都輸出一遍。但是數(shù)值之后加上“字符”后,就會(huì)使得sum變成一個(gè)字符串了。(可以利用 typeof函數(shù)測(cè)試一下,alert(typeof sum);)我覺得應(yīng)該可以這樣做:

<script>
?? ??? ?var n=1,sum=0;
?? ??? ?while(n<=100){
?? ??? ??? ?sum=sum+n;
?? ??? ??? ?document.write( sum+'<br>');
?? ??? ??? ?n++;
?? ??? ?}
?? ??? ?document.write(sum);
?? ?</script>

相信運(yùn)行之后你就會(huì)解決你的疑惑了。

查看完整回答
反對(duì) 回復(fù) 2016-01-29
?
emloxe

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊

最簡(jiǎn)單理解的方法 就是 在瀏覽器中斷點(diǎn)測(cè)試

查看完整回答
反對(duì) 回復(fù) 2016-01-29
?
Robin_1991

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊

你可以在里面打斷點(diǎn) 然后 每循環(huán)一次 看一下當(dāng)前的sum和n的值喲。。

var sum=0;

var n=1;

while(n<=100){

sum=sum+n;

debugger;

n++;

debugger;

}


打開f12刷新 ? ?然后再 console里面打印出當(dāng)前斷點(diǎn)n 和 sum的值 慢慢看吧

查看完整回答
反對(duì) 回復(fù) 2016-01-29
?
Caballarii

TA貢獻(xiàn)1123條經(jīng)驗(yàn) 獲得超629個(gè)贊

數(shù)值型加"<br/>"是什么鬼

你要測(cè)試也應(yīng)該這么寫:

while(n<=100){
????document.write(sum);
????document.write("&nbsp;");
????sum=sum+n;
????document.write(sum);
????document.write("<br/>");
}

這樣就能看出每一步的值了

查看完整回答
反對(duì) 回復(fù) 2016-01-29
  • 天窗的螞蟻
    天窗的螞蟻
    額,好吧。您能給我解答一下疑惑嗎
  • Caballarii
    Caballarii
    sum=1,3,6,10.....5050,你給sum加了"<br/>",破壞了原來的代碼,所以得不到正確的值, 第二次循環(huán)之前sum=1,上次循環(huán)結(jié)束時(shí)候的值. sum=sum+n的意思是sum的當(dāng)前值加上n的結(jié)果再賦值給sum
  • 天窗的螞蟻
    天窗的螞蟻
    謝謝您,弄明白了
  • 7 回答
  • 0 關(guān)注
  • 2241 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)