日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

程序开发剖解圣经(006)

發(fā)布時(shí)間:2023/12/20 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 程序开发剖解圣经(006) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

C語(yǔ)言剖解(03)

?????? 終于開(kāi)講C語(yǔ)言課程了,我前面說(shuō)過(guò),我會(huì)以譚浩強(qiáng)的《C程序設(shè)計(jì)》為教材,進(jìn)行基礎(chǔ)課的講解,但我堅(jiān)決反對(duì)跟著上面的風(fēng)格走,這里我會(huì)強(qiáng)調(diào)讓大家選擇一本書(shū):《高質(zhì)量C/C++編程指南》。作者是 林銳,這個(gè)西安電子科技大學(xué)的研究生,浙江大學(xué)的博士生,對(duì)我的編程風(fēng)格有很大的影響,我對(duì)他這本書(shū)當(dāng)然也是極為推崇。

因此,有時(shí)候我會(huì)信口就問(wèn)學(xué)生:

“知道林銳不?”

?“不知道!”

????? 聽(tīng)到這個(gè)回答,我相當(dāng)失望,有種直接拉出林銳的照片讓大家起立膜拜的沖動(dòng),但還是忍住了,膜拜在我的理解中,似乎是對(duì)逝者的尊重,因此我通常改為讓大家膜拜一下C語(yǔ)言之父丹尼斯.李奇,這個(gè)大胡子的家伙,正是他的仙逝讓我有了講課的念頭,并最后走上講課的道路。我推崇林銳的另一個(gè)原因,是甚為欣賞他的寫(xiě)作風(fēng)格,不至于讓人看書(shū)的時(shí)候,枯燥到睡著覺(jué),他能讓你在不知不覺(jué)中,接受一些知識(shí)。談笑間就能讓人學(xué)懂一些知識(shí),多么了不起呀。因此,我也會(huì)刻意的模仿,我希望我也有值得稱道的地方,也希望自己寫(xiě)的東西,除了讓大家一笑之外,多多少少,能留下些有用的東西,哪怕是一丁點(diǎn)。平凡人有偉人的思想,不見(jiàn)得就是瘋子或者白癡。所以大家不要對(duì)我嗤之以鼻,更不要噴飯哦。

?????? 開(kāi)始C的講課,我一般不講前兩章內(nèi)容,不講第一章是因?yàn)樗话裁刺嗟闹R(shí)點(diǎn),也是因?yàn)樗枋龅囊恍〇|西,諸如Turbo C,有過(guò)時(shí)的感覺(jué)。因此,我不講。第二章:算法我也不講,算法這個(gè)概念太過(guò)籠統(tǒng),籠統(tǒng)到你隨便寫(xiě)一個(gè)語(yǔ)句,都可以稱為算法,因此不講。但不講這一章,并不等于這一章沒(méi)有什么知識(shí)點(diǎn),我會(huì)讓大家下去看流程圖的畫(huà)法,有時(shí)候,也會(huì)即興用Visio 2003或者 visio 2007來(lái)繪制一個(gè)簡(jiǎn)單的流程圖。強(qiáng)調(diào)一下,流程圖用什么圖形作為開(kāi)始,什么圖形作為結(jié)束,什么圖形作為判斷,什么圖形作為描述等,如果讀者您看了我的文章,并且是抱著學(xué)習(xí)語(yǔ)言的心態(tài)來(lái)虔誠(chéng)領(lǐng)教的,那不好意思,就流程圖這部分,麻煩你就拿譚浩強(qiáng)的書(shū)把第二章看一下吧。

?????? 就這樣,我說(shuō)到了第三章。我上課也拿書(shū),但我基本不怎么翻書(shū),不翻書(shū)不代表我對(duì)書(shū)不了解,而是每堂課開(kāi)始講之前,我都會(huì)把書(shū)翻上好幾遍,查閱并想法在適當(dāng)?shù)奈恢貌迦胛易约旱乃枷牒蛦?wèn)題,因此,我自認(rèn)為已經(jīng)對(duì)這本書(shū)達(dá)到了熟練的程度。我會(huì)告訴學(xué)生

“如果你拿的是譚浩強(qiáng)《C程序設(shè)計(jì)》的第三版,請(qǐng)翻到第37頁(yè)。”學(xué)生很快就翻到了。

我接著發(fā)問(wèn):“看到了什么?”

“第三章”。

“我呸,這我當(dāng)然知道,大家又不是瞎子,需要用手摸!”

“呵呵……”

“看到了什么?”

這下大家不知道如何回答了,回應(yīng)之聲是跌宕起伏,三三兩兩,還有人學(xué)著我的樣子,說(shuō)我呸!

“神人呀,你都能看到 ‘我呸!’”

“呵呵……”

“我們應(yīng)該看到有一個(gè)圖,什么圖呢?關(guān)于數(shù)據(jù)類型的圖,有木有?”

?“有!”學(xué)生空前情緒高漲了。

?“有就念一下,有幾種數(shù)據(jù)類型?”

?“四種:基本數(shù)據(jù)類型、構(gòu)造類型、指針類型、空類型”

?“基本類型又包括什么?”

?“整型、字符型、浮點(diǎn)型、枚舉類型”,

?“浮點(diǎn)型又包括什么?”

?“單精度型、雙精度型!”

?照書(shū)念是學(xué)生的強(qiáng)項(xiàng),但多半情況下,他們并不思考。所以,我會(huì)問(wèn)。

“整型是什么?”

?學(xué)生被問(wèn)蒙了,瞪大眼睛,似乎懷疑書(shū)上少印了什么東西一樣。

“別瞪眼睛了,眼珠子都快出來(lái)了,后面沒(méi)東西了。”

“呵呵……”,學(xué)生以為我故意開(kāi)完玩笑,不再提問(wèn)了,結(jié)果我依然會(huì)問(wèn)

?“整型是什么”,學(xué)生徹底懵了。

?“唉,笨呀,這都不知道,整型是數(shù)據(jù)類型中的基本類型嘛!”

? “哦,哈哈……”。大多數(shù)學(xué)生被我逗樂(lè)了。我接著問(wèn)

? “指針是什么?”

? “數(shù)據(jù)類型!”

? “哎~~,聰明,都記住了沒(méi)?”

?? “記住了!”

?看官莫笑,不是我故意在這里刁難學(xué)生,確實(shí)是有些公司就拿這玩意兒作為筆試中的簡(jiǎn)答題,我無(wú)奈的哀嘆之余,也發(fā)現(xiàn)這不失為學(xué)習(xí)基礎(chǔ)知識(shí)的好方法,因?yàn)橹袊?guó)畢竟尚未脫離應(yīng)試教育,理論依然重要。

“記住了就好,那我再問(wèn)一下,C語(yǔ)言中為什么會(huì)引入數(shù)據(jù)類型呢?什么是數(shù)據(jù)類型呢?”

?當(dāng)然是一片寂然了。因?yàn)檫@思維太跳躍了,除了我和聽(tīng)我講過(guò)課的人外,估計(jì)再?zèng)]人能很快回答出來(lái)了。我說(shuō)過(guò),講課是一門藝術(shù),我的目的就是把知識(shí)灌輸給學(xué)生,所以,讓學(xué)生跟著我的思路走,總不會(huì)錯(cuò)。

“是這樣的”,我說(shuō)道:“在人類的日常生活中,會(huì)遇到各種問(wèn)題及其解決方案,并且發(fā)明了許多東西,來(lái)幫助人們方便的處理問(wèn)題,諸如 數(shù)學(xué)。而計(jì)算機(jī)語(yǔ)言的目的是為了幫助人類更好的解決生活中遇到的問(wèn)題。更方便的解決人類生產(chǎn)生活中出現(xiàn)的各種復(fù)雜事情。現(xiàn)實(shí)生活中有沒(méi)有數(shù)據(jù)類型?”

“有!”

?“對(duì),現(xiàn)實(shí)生活中就有整型、實(shí)型等這些必須的數(shù)據(jù)類型,所以,我們C語(yǔ)言中也引入了這些數(shù)據(jù)類型,并將其歸類,即基本數(shù)據(jù)類型;有些數(shù)據(jù)類型,現(xiàn)實(shí)生活中不直接存在,但計(jì)算機(jī)語(yǔ)言為了更透徹的展現(xiàn)生活中的各種問(wèn)題,也發(fā)明了一些數(shù)據(jù)類型,比如指針、數(shù)組、枚舉、結(jié)構(gòu)等”。

? “講這些,就是想讓你們知道,計(jì)算機(jī)語(yǔ)言是怎么來(lái)的。”

?? “可我們就想知道,計(jì)算機(jī)語(yǔ)言是怎么沒(méi)的。”,一些比較活潑的學(xué)生顯然發(fā)現(xiàn)我這個(gè)老師是相當(dāng)?shù)娜菀捉咏⒑芫哂杏H和力,會(huì)說(shuō)一下玩笑話,引起整個(gè)課堂的哄堂大笑,這很好,無(wú)形中活躍了氣氛。保證不會(huì)有人睡著。有這樣的人,我一般會(huì)點(diǎn)名他來(lái)負(fù)責(zé)這個(gè)班級(jí)作業(yè)進(jìn)度的監(jiān)督,并讓協(xié)助處理一些日常雜事,因?yàn)檫@些學(xué)生一般都很外向,說(shuō)句難聽(tīng)的話,就是“外騷”型的。他們團(tuán)結(jié)同學(xué)很有一套,一般威望也不低。作為老師,我當(dāng)然樂(lè)意給他們更好的機(jī)會(huì)。無(wú)論是學(xué)習(xí)還是生活還是交際還是管理。或許他們都能學(xué)得一些東西吧。

?在談笑中,我敲定了班長(zhǎng),甚至包括組長(zhǎng)的人選后,繼續(xù)講后面的內(nèi)容,首先就是常量和變量,本篇我講常量和符號(hào)常量

? 我不會(huì)照書(shū)去念,這太沒(méi)意思,也太浪費(fèi)口水,既然教編程,教編程語(yǔ)言,我當(dāng)然要通過(guò)動(dòng)手來(lái)提高大家的動(dòng)腦能力。照書(shū)念的老師不是好老師。那是不負(fù)責(zé)任的老師,說(shuō)不定還有些膽怯,怕超出自己范圍之外,自己不會(huì),亦或是怕被學(xué)生問(wèn)倒,我一直認(rèn)為,課堂不是我一個(gè)人的課堂,是需要和學(xué)生互動(dòng)的,沒(méi)有互動(dòng)的課堂,就不叫課堂。活生生的例子就是,我在學(xué)校就沒(méi)學(xué)好,嘿嘿,這話說(shuō)出來(lái)有點(diǎn)無(wú)恥,其實(shí)一點(diǎn)都不卑鄙。

好,言歸正傳,我飛快的寫(xiě)下如下程序。

#include<stdio.h>

int main(void)

{

?????? int ?i = 9;

?????? printf(“%d\n”i);

}

我會(huì)用鼠標(biāo)指著9問(wèn)大家,提問(wèn)是最好的互動(dòng):

“這是不是常量?”

“是。”

我于是又隨機(jī)寫(xiě)幾個(gè)值如下:

‘1’, ‘a(chǎn)’, 1.65e2,并繼續(xù)問(wèn)大家“這些是不是常量”。

“是”。學(xué)生并非什么都不知道,因此,幾乎沒(méi)人回答錯(cuò)誤。

“那,常量能不能改變?”

?“不能!”。我不能不說(shuō),我這里是故意埋了一個(gè)坑,我埋坑的目的只有一個(gè),往下看。

“不能么?那你看我改了沒(méi)?”我說(shuō)著,把 i = 9,后面的 9改為了 99;

學(xué)生無(wú)語(yǔ),他們不認(rèn)為他們的回答是錯(cuò)誤的,只是摸不著頭腦的看著我,知道我有后話。

“我這不是改了么?常量能不能改變?”

大部分學(xué)生不在說(shuō)話了,但不乏有一些比較認(rèn)真優(yōu)秀的學(xué)生,他們提前做了預(yù)習(xí),這部分學(xué)生很認(rèn)真,并且很快從我挖的坑里跳了出來(lái)。

“運(yùn)行期間不能改變。”

對(duì)!大家記住了,常量是在運(yùn)行期間不能改變。”我敢保證,這樣的記憶絕對(duì)比你照書(shū)本念,然后不停地重復(fù)幾次以作強(qiáng)調(diào)要好的多。

理解了這個(gè)概念之后,我還會(huì)繼續(xù)問(wèn)

“i = 9 代表什么意思?”

這絕對(duì)沒(méi)人回答的出來(lái),我也回答不出來(lái)。這確實(shí)不代表什么意思,如果你比較聰明,或者有一定基礎(chǔ),或者看的東西比較多,你說(shuō)這叫對(duì)i進(jìn)行定義并初始化。沒(méi)錯(cuò),可,初始化為9有什么意義,你知道么?

是的,沒(méi)人來(lái)回答這個(gè)問(wèn)題,或者頂多是后面我寫(xiě)的,但我又引出的新問(wèn)題,你會(huì)徹底無(wú)法回答。

“那 i = 9代表什么意思呢?”我邊說(shuō)邊又寫(xiě)下了如下代碼。

#defineMAX_APPLE_NUMBER? 9

然后把 i = 9改為 i = MAX_APPLE_NUMBER;我再問(wèn)大家,現(xiàn)在 i = 9代表什么意思?這下有人知道了。

“代表最大蘋果數(shù)量。”

“對(duì),很多時(shí)候,我們?yōu)榱耸刮覀兊亩x和初始化讓大家看的懂,我們會(huì)寫(xiě)成如上那樣,這個(gè)東西叫什么?”我指著#define MAX_APPLE_NUMBER? 9這句話問(wèn)。

回答“宏定義!”的有之,回答“預(yù)處理”的有之,回答“符號(hào)常量的有之”。

“對(duì),你們的回答都很正確,我們?cè)谶@里把它稱之為:符號(hào)常量。”

我想這下大家對(duì)符號(hào)常量有一定的認(rèn)識(shí)了。我繼續(xù)講

“那么,用符號(hào)常量有什么好處呢?”

循著上面對(duì)符號(hào)常量的引出,大家很快概括出來(lái)了。

“語(yǔ)義清晰。”

?“對(duì),符號(hào)常量具有如下幾個(gè)優(yōu)點(diǎn):1、語(yǔ)義清晰,一改全改。”邊說(shuō)我會(huì)邊更改后面的值。并告訴大家,這東西的使用優(yōu)點(diǎn),當(dāng)然看官可能知道,他也有一定得缺點(diǎn),至于優(yōu)點(diǎn)和缺點(diǎn),我都不在這里多數(shù),往后放置。

?至此,我講了常量和符號(hào)常量。

總結(jié)

以上是生活随笔為你收集整理的程序开发剖解圣经(006)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。