最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

如何用輕小說(shuō)的方式學(xué)C++(四) 旋轉(zhuǎn)吧雪月花

2019-09-19 00:03 作者:汐留楓Channel  | 我要投稿

“明日復(fù)明日,明日何其多;我生待明日,萬(wàn)事成蹉跎?!?/p>

挺著并不存在的胸,深情朗誦完了這一句后,凜音拿起白板筆歪歪扭扭如同雞爬地寫下了這首古詩(shī)。

“那么問(wèn)題來(lái)了——?jiǎng)x那認(rèn)為我們今天會(huì)學(xué)什么?”

“呃...不知道?”

“今日課題:循環(huán)?!?/p>


“吾徒剎那喲,你認(rèn)為一個(gè)循環(huán)需要有哪些成分?”

“誒?什么叫哪些成分?”

“就是一個(gè)循環(huán)必要的組成部分?。俊?/p>

“唔...比如說(shuō),要有一個(gè)循環(huán)執(zhí)行的代碼?然后需要有一個(gè)判斷退出的條件?”

“很好。那么,這就引出了我們今天第一個(gè)要學(xué)的東西?!?/p>


while(expression) {

????//todo

}


“expression代表的是一個(gè)表達(dá)式,每次循環(huán)之前都會(huì)計(jì)算一次,除非其值為0跳出循環(huán),否則將一直執(zhí)行兩個(gè)大括號(hào)內(nèi)的代碼?!?/p>

“當(dāng)然,大括號(hào)依舊標(biāo)志著這是復(fù)合語(yǔ)句,所以如果循環(huán)內(nèi)只有一條語(yǔ)句的話可以不加大括號(hào)?!?/p>

“凜音醬啊,這個(gè)兩個(gè)斜杠加一個(gè)...todo?是什么意思?”

凜音如臨大敵,大吼道:“TODO可是一個(gè)邪惡的字眼。每當(dāng)你在你的代碼中看到它,你就知道又有其他的傻屌程序員甩鍋給你,要你干一些こ——んなこと、あ——んなこと這些奇奇怪怪的事情?!?/p>

凜音話音還沒(méi)落,便被久遠(yuǎn)的紙扇狠狠地拍了幾巴掌。

久遠(yuǎn)接過(guò)凜音的話筒(啊咧為什么有話筒?),開(kāi)始繼續(xù)講解:

“沒(méi)有多少人能夠過(guò)目不忘,所以人總是傾向于往這種高度復(fù)雜的信息里加注釋。C艸的注釋有兩種形式,第一種是兩個(gè)除法的斜杠 // ,是單行注釋;第二種是塊注釋,? /* ... */? ?。注意,塊注釋是不能嵌套的。至于TODO,只是可能因?yàn)橛行┰驔](méi)有來(lái)得及寫,所以先在這里做標(biāo)記等待日后再說(shuō)?!?/p>

“日后再說(shuō)~”

啪嘰——?jiǎng)C音的頭上多了一個(gè)包。


“除去上面的這種結(jié)構(gòu)外,有的時(shí)候一個(gè)循環(huán)需要先做一遍再判斷條件,可以用以下的寫法:”


do {

/*

????TODO

*/

} while(expression);


“看到了!邪惡的字眼!”

“剎那啊你可不要學(xué)凜音啊?!?/p>

“誒嘿嘿~抱歉了?!?/p>

“注意一下這里的while(expression)之后是有分號(hào)的,不要漏了。與while相同,只不過(guò)是先執(zhí)行括號(hào)內(nèi)的代碼再判斷結(jié)束條件。當(dāng)然,大括號(hào)也標(biāo)志著這里是復(fù)合語(yǔ)句塊,只有一個(gè)語(yǔ)句是不需要大括號(hào)的,不過(guò)沒(méi)大括號(hào)看起來(lái)很奇怪就是了?!?/p>


“那么,進(jìn)入今天最后一個(gè)語(yǔ)句,for語(yǔ)句。”

“for?英語(yǔ)介詞的for?那個(gè)介詞很煩啊,英語(yǔ)考試填介詞我老是填不對(duì)?!?/p>

“所以和英語(yǔ)沒(méi)那么大關(guān)系拉?!?/p>


for(initialization;expression;step) {

????// todo

}


for(item : group) {

????// todo

}


“第一個(gè)for里面有三個(gè)表達(dá)式,之間用分號(hào)隔開(kāi);第一個(gè)表達(dá)式是初始化,第二個(gè)表達(dá)式是每次循環(huán)開(kāi)始前都要判定的條件表達(dá)式,第三個(gè)則是每次循環(huán)結(jié)束以后執(zhí)行的表達(dá)式?!?/p>

“這里的配色真不是在映射什么幼兒園嗎?”

“律師函警告!”

“我舉個(gè)簡(jiǎn)單的例子吧,比如求1到100的和”

“嗯,5050.”

“...那1到987654321的和呢?”

“487730529388812681”

“...你贏了?!?/p>


int i,sum;

for(i=1,sum=0;i<=100;i=i+1) {

????sum=sum+i;

}


“初始化,給i賦值為1,sum賦值為0,然后只要i<=100就執(zhí)行這個(gè)循環(huán),每次會(huì)給i遞增1”

(似懂非懂)

“那么剎那你用while寫一個(gè)吧?!?/p>

(手放在鍵盤上,遲遲沒(méi)有按下第一個(gè)鍵。)

“想一想整個(gè)程序的流程。第一步干啥?”

“初始化?!?/p>

“循環(huán)執(zhí)行的條件呢?”

“小于等于100?”

“下個(gè)循環(huán)開(kāi)始前要干嘛?”

“遞增1?”


int i,sum;

i=1,sum=0;

while(i<=100) {

????sum=sum+i;

????i=i+1;

}


“同理,顯然有個(gè)通用的轉(zhuǎn)換方式對(duì)應(yīng)上面的for語(yǔ)句塊:”


initialization;

while(expression) {

????// todo

????step;

}


“久遠(yuǎn)前輩,那下面那個(gè)帶冒號(hào)的語(yǔ)句是什么呢?”

“這個(gè)等遲一點(diǎn)講數(shù)組和容器的時(shí)候再說(shuō)吧。”


“那么,現(xiàn)在進(jìn)入黑魔法課程。”

“黑...黑魔法?!”

“對(duì),這可是對(duì)程序媛而言的不可饒恕咒——goto語(yǔ)句!”

“嗚哇!”

“傳說(shuō)中,伏地魔在他的魔法里面使用了2147483647條goto語(yǔ)句以后突然暴斃身亡——”

“等等這個(gè)故事好像哪里有點(diǎn)不對(duì)?”


label1:

someCodes();

goto label1;


“以上就是大致的語(yǔ)法。在同一個(gè)函數(shù)內(nèi)先隨便取一個(gè)標(biāo)簽名,然后在其他地方用goto就可以了。goto語(yǔ)句可以往回跳也可以往后跳,但是不能跨函數(shù)跳??绾瘮?shù)的話要用其他技術(shù),這個(gè)以后再說(shuō)。”

“看上去挺正常的?。繛槭裁磿?huì)是不可饒恕咒呢?”

“那么剎那,請(qǐng)您以后無(wú)論怎樣的循環(huán)都只使用goto試一試?!?/p>

“嗚哇——我試試吧?!?/p>

“久遠(yuǎn)前輩啊,這代碼也還好吧,用了goto以后還挺好的啊?”

“No no no~這不是這么操作的?,F(xiàn)在請(qǐng)剎那保存文件等一周以后看吧~那么我們今天就到這里吧——”

“啊對(duì)了好孩子要注意一下,goto因?yàn)榭梢曰靥钥梢?span id="s0sssss00s" class="font-size-23">與if等分支條件組成循環(huán)結(jié)構(gòu),但是絕不是說(shuō)goto就是循環(huán)語(yǔ)句喲~那么——”

“那么?”

“今天剩下的時(shí)間——”

凜音終于復(fù)活,跳了起來(lái):“當(dāng)然是強(qiáng)化訓(xùn)練啦!”

“誒?莫非是...練習(xí)打字?”

“程序員像干那么low的活的人嗎?!”

凜音拖來(lái)一個(gè)白板,踮著腳在白板上用筆歪七扭八地寫上“強(qiáng)化訓(xùn)練”后,把筆往背后一拋,一個(gè)帥氣的轉(zhuǎn)身,然后左腳絆右腳摔在了地上。

久遠(yuǎn)接過(guò)話筒,開(kāi)始給剎那進(jìn)行強(qiáng)化。

(你被強(qiáng)化了!快白給?。?/p>

“今天的主題——表達(dá)式。因?yàn)槟壳皩W(xué)的東西有限,就先講講表達(dá)式和運(yùn)算符吧?!?/p>

“剎那應(yīng)該知道每個(gè)表達(dá)式都是有值的吧?!?/p>

“嗯,之前有提到過(guò)?!?/p>

“那問(wèn)題1:a=5;的值是多少?”

“是5,先把5賦值給a然后再返回一個(gè)5?!?/p>

“那么問(wèn)題2:a=b=5; 呢?”

“唔...先把5給b,然后把b給a?”

“正解~那么問(wèn)題來(lái)了,a=b++;呢?”

“b++?”

“啊啦這個(gè)凜音沒(méi)講嗎...這叫自增運(yùn)算符,當(dāng)然可以寫c--,這個(gè)自減就不額外說(shuō)了。有兩種寫法:++c和c++。”

“啊啦!出現(xiàn)了!C++!”

“嘛C++的意思就是在C語(yǔ)言上面的擴(kuò)展嘛?!?/p>

“習(xí)語(yǔ)言?”

“呃你不用去管,反正就是個(gè)C++的前輩。呃說(shuō)前輩可能不太恰當(dāng),應(yīng)該算是父親吧?!?/p>

“那母親呢?”

“知るか?!”

久遠(yuǎn)咳了幾聲,有些力不從心地繼續(xù)說(shuō)到:“++c和c++在對(duì)c的操作上都是給c加一?!?/p>

“C++也就是給C加1嘍?會(huì)不會(huì)加的有點(diǎn)少?”

“...”

“啊咧?怒った?”

“怒ってないよ”

“怒った”

“怒ってないよ”

“怒...”

剎那感覺(jué)后背冒了冷汗,便沒(méi)有再繼續(xù)耍寶下去。

“二者唯一的區(qū)別在于,++c是先給c自增然后返回c的值,而c++是先獲得c的值以后再給c自增?!?/p>

“嗚哇感覺(jué)很難記住的樣子?!?/p>

“記不住的話就盡量避免這寫嘍,如果不是考試的話也沒(méi)必要立刻就區(qū)分開(kāi)來(lái)。而且就單獨(dú)一句的話,++c和c++的結(jié)果是一樣的?!?/p>

“搜卡~”

“下一道題!a+=b-=5;假設(shè)ab初始都是10.”

“呃,先展開(kāi)右邊的b-=5,得出來(lái)是5,然后a+=5得出來(lái)a是15,所以結(jié)束以后返回值15,a是15且b是5?”

“正解!最后一道題!——”

“d=(a=3,b=4,c=a+b); 這個(gè)就留做思考題吧~”


“那么我來(lái)說(shuō)一下今天的作業(yè)吧!~”


Mission Issued?。?/p>

“機(jī)巧少女夜夜打算在學(xué)園祭上表演‘旋轉(zhuǎn)吧雪月花!’,打算在高潮的‘まわれ’的時(shí)候往電腦屏幕上打印一百個(gè)まわれ,現(xiàn)請(qǐng)你分別使用forwhile以及goto實(shí)現(xiàn)。”


(一周以后,剎那看著一周前寫的goto程序一臉懵逼)

如何用輕小說(shuō)的方式學(xué)C++(四) 旋轉(zhuǎn)吧雪月花的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
枣阳市| 四平市| 高雄县| 竹山县| 资源县| 岐山县| 合水县| 务川| 桐梓县| 建湖县| 剑河县| 华坪县| 清苑县| 伊通| 昆明市| 雷波县| 萝北县| 积石山| 馆陶县| 绥宁县| 屯门区| 会泽县| 兴业县| 阿合奇县| 滦平县| 民县| 茶陵县| 崇文区| 喀喇沁旗| 汨罗市| 台北县| 昭通市| 虹口区| 岢岚县| 封开县| 石台县| 周口市| 吉安县| 宜城市| 轮台县| 麻栗坡县|