枕邊演算法書
❶ 信息與計算科學專業的學生在大學應掌握哪些
數學的計算機科學的靈魂,這里的計算機科學不是用.net搗鼓個應用,用php架個站什麼的。所以數學一定要學好,而這個專業的數學課對今後的深造的重要性是毋庸置疑的,數學分析,高等代數,概率論就不用說了,這是一切的基礎。數值分析的相關課程也很重要,因為計算機科學會大量的牽涉的矩陣論,概率論,但是這些東西計算的時候都是離散形式的。然後更高階一點的是隨機過程和矩陣論。
這個專業的另外一條主線當然就是計算機,但是,請忽略掉你的那些老師吧,根據我的經驗,數學系教這些課程的老師大部分都是混飯吃的。所以你需要自學。
計算機首先需要掌握一門語言,c語言或者Java應該是首選,前者推薦《The C Program Language》,認真學習完C語言,就可以去閱讀《深入理解計算機系統》這本書了,如果你大一就能夠把這兩本書認真看完,恭喜你,本科畢業以後起薪10k的工作隨便找,當然你估計不會去工作的了。之後需要看數據結構和演算法的書,可以看《演算法導論》,然後《編程珠璣》什麼的可以作為睡前枕邊書娛樂一下。這期間,最好把linux也弄熟練,這個完全就是熟練功了,多動手就好。編譯原理可以看龍書,不過這東西今後可能用處不是太大。Java或者C++弄得差不多時,就可以去GitHub上看看開源項目了,找些自己感興趣的,多看看一些優秀項目的代碼。這樣會加深你對語言的理解。
說了那麼多我想糾正的就是,學計算機千萬別走錯方向,數學很重要,基本功也很重要,這些練好了,才能做更高端的東西。
❷ 推薦幾本c++入門的書
我覺得《The C++ Programming Language》是C++入門者的最佳讀物。理由如下:
1,入門書籍的選擇一定要慎之又慎,不然會大大影響初學者對C++的認識。好比在一塊木板上釘一顆釘子,如果開頭幾錘子敲下去就敲歪了,那麼以後要想糾正就非常困難了。很多人最後放棄學習C++,就是因為他們被一些不好的書所誤導,以至於他們還沒有來得及領略C++的恢宏與壯美就鳴金收兵了。這種情況非常令人可惜。有鑒於此,只要有人問我初學C++應該選那本書,我就會毫不猶豫地推薦由C++創始人Bjarne Stroustrup執筆的鴻篇巨制:《The C++ Programming Language》!之所以向大家推薦這本對於初學者而言可能略顯艱深的書籍,是因為:選擇C++作為學習對象的人一般都是下定決心專業從事軟體研發的技術人員。一般而言,他們對計算機領域的各種基礎知識是具備一定功底的。如果初學者並不想在程序設計領域深入地走下去,那麼,我不會推薦他學習C++,而會推薦他去學習其他語言。
2,不像市面上常見的一些強調學習過程短平快的編程書籍,學習這本書不要貪圖速成。因為C++本來就不是一門可以速成的語言。所謂的速成無非是僅僅學會C++的一丁點皮毛。《The C++ Programming Language》這本書可以長時期放在你的枕邊伴你入眠,它將伴隨著你度過編程生涯的每一個成長階段。因此買這本書的投資是絕對劃算的。表面上看,學習這樣的經典著作可能會很慢,會很吃力,但是我相信這才是真正的捷徑,因為它不會讓你走彎路,不會讓你在學習過程中一次又一次地糾正自己在閱讀其他低質量C++書籍過程中所慢慢形成的錯誤觀念,所以說:似遠實近!
3,OO觀念的初步建立是學習C++的前提,必須時刻用OO觀念去理解C++的設計決策。OO觀念的核心有三條:封裝,繼承,多態。網上關於OO基本觀念的介紹也是多如牛毛。初學者不必急於一下子完全理解它們,因為OO觀念的深刻理解只能從長時期的思考和實踐過程中獲得。這本書的最大特點就是在引入C++各項語法特徵的過程中特別注重交待清楚它們的來龍去脈,尤具價值的是,書中每一章後面都給出了極其實用的編程建議(Advice),這些編程建議是國內那些C++作者不可能寫得出來的。我這么說絕對不是崇洋媚外。如果說中國的IT技術水平落後國外20年的話,那麼中國的IT教育水平至少要落後國外30年。中國目前在IT技術寫作領域沒有哪一個稱得上是大師級別的原創技術作家,大多是靠剪刀加漿糊吃飯的。檔次低一點的,直接抄襲和拼湊國外名家的作品;檔次高一點的,熟讀一下技術標准和規范,然後再翻譯成中文,就變成著作了。
4,讀完國內作者寫的C++書籍之後,你很難獲得一種C++究竟強大在何處的認識,好像你只不過是在熟悉一種普通編程語言的語法細節罷了。很多人發出這樣的疑問:絕大多數C++的語法概念其他語言也有,比如函數的概念,結構的概念,子程序的概念,類的概念等等,那麼究竟是什麼樣的的特性使得C++成為了目前最具有影響力的編程語言之一呢?這是那些國內C++書籍所不能告訴你的。國內C++書籍大量的著墨點基本上全部落在各種編程語言都具有的這些共性上面,基本上沒有看見過有哪本書專門介紹過C++所獨具的「特性」。為什麼這些作者不講呢?那是因為C++獨具的「特性」通常隱藏於C++的整體設計之中,如果不是像Bjarne Stroustrup那樣的骨灰級C++大師,一般的中國作者絕對不可能具備俯瞰C++設計全局的能力。
5,各種編程語言的語法共性基本上人人都可以在很短時間內熟練掌握。關於C++的入門語法介紹,網上免費資料暴多,初學者完全可以一邊跟隨著這些入門資料的指導,一邊在電腦上敲敲打打,從而快速度過學習一門語言的語法熟悉階段。一旦初學者在短時間內熟悉了C++的基本語法,那麼這些國內作者編寫的C++書籍基本上就可以束之高閣了。因為這些書籍大多沒有什麼思想價值,作為技術手冊參考一下勉強可以,但如果用來深入掌握C++就只能說是緣木求魚了。況且這些書通常並不便宜,一般也要30-50元人民幣。同學們一般資金有限,所謂好鋼要用在刀刃上,與其買一本利用價值不高的書,還不如加一點點錢去購買真正經典的書籍。所以我絕對不會推薦初學者去購買國內作者寫的C++書籍。
6,不是說中國在IT領域沒有高手,就我所知,中國的技術高手還是有不少的,但是願意把自己的寶貴經驗和心得體會用筆寫成書的高手我就極少看到過了。首先,這些經年累月積累下來的知識財富對於一個吃技術飯的人來說實在太寶貴,寫成書公開對作者而言實在太吃虧。希望大家承認並接受這個事實。知識本來就具有財產的屬性,不然「知識產權」一詞從何而來?其次,寫書很花時間,基本上是一件燃燒自己照亮別人的雷鋒行為。當然,這里的寫書指的是作者毫無保留地把自己的精華經驗寫出來而不是為了斂財而瞎編。最後,目前在中國,通過奉獻自己的技術經驗來獲得合理的收益和報酬還不現實,中國還不具備產生專職技術作家的土壤,原因是多方面的,大家都明白。
7,為什麼國外有那麼多高手願意寫書呢?原因有多種。一、國外有良好的知識產權保護制度,技術高手可以通過寫書來獲得不低於當一個資深工程師的收入。二、國外的技術積累實在太雄厚,有些東西在中國可能是技術秘密,但是對於國外作家而言,算不上是技術秘密,因此可以寫成書公開。三、對某些作家而言,他公布自己的經驗越多,對自己越有利。比如Bjarne Stroustrup,很顯然,對他來說,全世界使用C++的程序員越多,他的地位就越不可動搖。所以,Bjarne Stroustrup完全可以把自己關於C++的一切技術思考和經驗毫無保留地告訴給全世界的C++程序員。微軟和SUN免費公布自己的技術規范也是同樣道理。所以在國外,作者,讀者,出版商共同構成了一個良性循環的知識生態系統。毫無疑問,這樣的結果必定是多贏。但是,請牢記,真正有商業價值的技術你絕對不可能通過買書學習來獲得,比如,你絕對不可能在市面上買到Adobe公司關於字體引擎的演算法講解書籍。要是你恰恰需要這些技術怎麼辦?回答是:購買!買不起或者買不到就只有脫下外套挽起袖子自己來搞了。沒有技術的封鎖就沒有技術的進步,這又是一個需要用辯證法來解釋的問題。
8,我相信,只有通過精讀C++創始人撰寫的這本書,你才可以最准確地理解和把握C++區別於其他語言的精髓。Bjarne Stroustrup不僅僅介紹了C++的語法,更重要的是全面闡釋了C++各種基本設施的設計動機以及在應用過程中應當注意避免那些問題。這本書不僅僅告訴你How,更重要的是他會告訴你Why!況且,世界上沒有哪個人能比Bjarne Stroustrup更加了解C++!世界上也沒有哪個人能比Bjarne Stroustrup把C++闡釋得更加清楚!這就是我為什麼強烈推薦此書的最根本理由!我覺得學習C++的過程中最好時刻審問自己:C++中的某些規范為什麼要這么制定?比如:為什麼要搞運算符重載?為什麼要保留廣受詬病的多重繼承機制?等等。思考這些問題就是在揣摩C++標准委員會的設計意圖,而這些設計意圖實際上深刻地反映了工業界所面臨的各種現實問題。
9,是否懂得C語言並不是學習C++的前提。不僅僅是因為C++本身兼容C語言,更重要的是C++所倡導的程序設計觀念是和C語言完全不同的。C語言在某種意義上是對CPU模型的抽象。盡管C++完全保留了C語言的機器模型,但是C++更加註重對現實世界進行抽象。為此,C++創始人Bjarne Stroustrup專門寫過一篇著名的文章:《Learning Standard C++ as a New Language》(把標准C++作為一種全新的語言來學習)
❸ 復習計劃
慢慢看 後邊是公式
六下復習要點
第一單元主題是「人生感悟」。五篇課文從不同的角度闡明了人生的哲理。
《文言文兩則》表達了學習應該專心致志和看待事物應該有不同角度的道理;《匆匆》表達了作者對時光飛逝的惋惜和無奈,滲透著珍惜時間的意識;
《桃花心木》借物喻人,說明人的成長應該經受考驗,學會獨立自主。
《頂碗少年》蘊含著「失敗乃成功之母」的哲理。
《手指》闡明「團結就是力量」的道理。
第一課《文言文兩則》
(3)譯文:
《學弈》
弈秋是全國的下棋高手。他教導兩個學生下棋,其中一個學生非常專心,只聽弈秋的教導;另一個學生雖然也在聽弈秋講課,心裡卻一直想著天上有天鵝要飛過來,想要拉弓引箭把它射下來。雖然他倆在一塊兒學習,但是後一個學生不如前一個學得好。難道是因為他的智力不如別人好嗎?我說:不是這樣的。
《兩小兒辯日》
有一天,孔子到東方游學,看到兩個小孩為什麼事情爭辯不已,便問是什麼原因。
一個小孩說:「我認為太陽剛出來的時候離人近一些,中午的時候離人遠一些。」
另一個小孩卻認為太陽剛出來的時候離人遠些,而中午時要近些。
一個小孩說:「太陽剛出來的時候像車蓋一樣大,到了中午卻像個盤子,這不是遠的時候看起來小而近的時候看起來大的道理嗎?」
另一個小孩說:「太陽剛出來的時候有清涼的感覺,到了中午卻像把手伸進熱水裡一樣,這不是近的時候感覺熱而遠的時候感覺涼的道理嗎?」
孔子也不能判斷是怎麼回事。
兩個小孩笑著說:「誰說你的知識淵博呢?」
第二課《匆匆》(散文)
(寫作特色:作者運用設問、比喻、排比、擬人等句式將不易察覺的時光匆匆,一去不復返寫得形象生動,富有感染力)
1、背誦課文。
2、知識點:
《匆匆》的作者是著名散文大師朱自清(本文是他24歲時所寫),他的散文名篇有《匆匆》、《背影》、《荷塘月色》等。本文緊扣「匆匆」二字,細膩地刻畫了時間流逝的蹤跡,表達了作者對時光流逝的無奈和惋惜。
3、理解句子:
(1)燕子去了,有再來的時候;楊柳枯了,有再青的時候;桃花謝了,有再開的時候。但是,聰明的,你告訴我,我們的日子為什麼一去不復返呢?
用排比的句式,表明大自然的枯榮是時間飛逝的痕跡。「我們的日子為什麼一去不復返呢?」看似在問,實際上表達了作者對時光逝去而無法挽留的無奈和對已逝日子的深深留戀。
仿寫:太陽落了,有再升起的時候;月亮缺了,又再圓的時候;潮水退了,有再漲的時候。
(2)像針尖上一滴水滴在大海里,我的日子滴在時間的流里,沒有聲音,也沒有影子。
比喻句。把自己過去的八千多日子比喻成針尖上的一滴水,把時間的流比喻成浩瀚的大海。寫出了時間消逝得那麼快,無聲無息,無影無蹤,表現出作者十分無奈的愁緒。
仿寫:像一粒細沙躺在茫茫的沙灘上,我的日子落在時間的流里,沒有聲響,也沒法找尋。
(3)洗手的時候,日子從水盆里過去;吃飯的時候,日子從飯碗里過去;默默時,便從凝然的雙眼前過去。
排比句。作者從人們日常生活的細節,展示了日子在生活的不經意中來去匆匆。
仿寫1:聊天的時候,日子從嘴邊過去;寫作的時候,日子從筆尖下過去;思索的時候,日子從緊皺的雙眉前過去。
仿寫2:玩耍的時候,日子從手裡過去;睡覺的時候,日子從枕邊過去;看電視的時候,日子從屏幕前過去。
仿寫3:散步的時候,日子從我懶散的步伐間躍過;寫字的時候,日子從我的筆尖跨過;彈琴的時候,日子從我的指間輕輕地流過。
(4)過去的日子如輕煙,被微風吹散了,如薄霧,被初陽蒸融了;我留著些什麼痕跡呢?
比喻獨特,聯想新奇。日子就是如此稍縱即逝。
仿寫:過去的日子如露珠,被陽光蒸發了,如春水,被大海包容了。
過去的日子如彩虹,被白雲遮擋了,如曇花,被白天送走了。
(同步練P4)
在逝去如飛的日子裡,我能做歡樂的飛鳥,我能做自由的蝴蝶,我還能做嬉笑的精靈。
在逝去如飛的日子裡,我能做的是回顧曾經的幸與不幸,我能做的是展望未來的美好與歡樂,我還能做的是把握有限的今天。
在逝去如飛的日子裡,我能做一棵獻給人們一片陰涼的大樹,我能做一朵點綴世界的美麗花朵,我還能做一片默默無聞的小草。
4、背誦《明日歌》。
5、關注形容時間過得快的詞語(詞語手冊p5):
光陰似箭、日月如梭、流星趕月、斗轉星移、稍縱即逝、白駒過隙
轉眼間、眨眼間、一瞬間、霎時間、一剎那、彈指間、頃刻間
6、有關珍惜時間的成語:惜時如金、分秒必爭、只爭朝夕
1、日積月累
(1)《元日》宋 王安石
爆竹聲中一歲除,春風送暖入屠蘇。 千門萬戶曈曈日,總把新桃換舊符。
(2)《天竺寺八月十五日夜桂子》 唐 皮日休
玉顆珊珊下月輪,殿前拾得露華新。 至今不會天中事,應是嫦娥擲與人。
2、《元日》寫的是春節時的情景,《天竺寺八月十五日夜桂子》寫的是中秋節時的情景。我國的傳統佳節還有清明節、端午節、元宵節、乞巧節、重陽節等。
描寫我國傳統佳節的詩句有:「獨在異鄉為異客,每逢佳節倍思親」;
第十課《十六年前的回憶》(回憶錄)
2、《十六年前的回憶》通過對李大釗的回憶,是按被捕前、被捕時、法庭上、被害後的順序來敘述的。被捕前寫父親燒掉文件和書籍,工友閻振三被抓,反映出形式的險惡與處境的危險;被捕時寫了敵人的心虛、殘暴與父親的處變不驚;法庭上描寫了李大釗的鎮定、沉著;被害後寫了全家的無比悲痛。
文章展示了革命先烈忠於革命事業的偉大精神和面對敵人堅貞不屈的高貴品質,表達了作者對父親的敬仰與深切的懷念。
3、理解句子:
(1)我們的共產黨和共產黨所領導的八路軍、新四軍,是革命的隊伍。我們這個隊伍完全是為著解放人民的,是徹底地為人民的利益工作的。
文章開篇就點明主題。整段話表明:全心全意為人民服務,是共產黨和革命軍隊的根本宗旨。
「完全」的意思:除了為人民服務,沒有別的目的;「徹底」是貫徹到底的意思。這句話的意思是說,我們的隊伍不管在什麼時候,不管做什麼工作,都百分之百地為人民服務。
(2)我們的幹部要關心每一個戰士,一切革命隊伍的人都要互相關心,互相愛護,互相幫助。
這句話的意思是,革命隊伍的人是為了一個共同目標走到一起來的。因此,不論是幹部對戰士,還是戰士對戰士,都要互相關心、愛護和幫助。這樣才能更好地團結起來,共同奮斗,實現我們的目標。
4、P57第3題:共幾句?每句話說的是什麼意思?句與句是怎樣連起來的?
因為我們是為人民服務的,所以,我們如果有缺點,就不怕別人批評指出。不管是什麼人,誰向我們指出都行。只要你說得對,我們就改正。你說的辦法對人民有好處,我們就照你的辦。
這段話共4句話。第一句是講(我們要歡迎批評),第二句話是講(我們歡迎任何人的批評),第三、四句話是講(我們接受任何人的只要是正確的批評)。
句與句之間聯系緊密,意思層層遞進。再抓住這段話中的關聯詞語分析,我們可以進一步明確:衡量批評正確與否的標准只有一個,就是——是否符合人民的利益。接受任何人的只要是正確的批評的目的也只有一個,就是為人民服務。
13 一夜的工作
本課著重敘述了作者陪同總理審閱稿子時的所見所聞,從工作勞苦和生活簡朴兩個方面表現了周總理的崇高品質。
寫作特色:本文選材以小見大,以點帶面,用質朴無華的文字,生活中的小事表現人物崇高人格,中心突出,有詳有略。
一、負數: 1、在熟悉的生活情境中初步認識負數,能正確的讀、寫正數和負數,知道0既不是正數也不是負數。 2、初步學會用負數表示一些日常生活中的實際問題,體驗數學與生活的密切聯系。 3、能藉助數軸初步學會比較正數、0和負數之間的大小。 二、圓柱和圓錐 1、認識圓柱和圓錐,掌握它們的基本特徵。認識圓柱的底面、側面和高。認識圓錐的底面和高。 2、探索並掌握圓柱的側面積、表面積的計算方法,以及圓柱、圓錐體積的計算公式,會運用公式計算體積,解決有關的簡單實際問題。 3、通過觀察、設計和製作圓柱、圓錐模型等活動,了解平面圖形與立體圖形之間的聯系,發展學生的空間觀念。 三、比例 1、理解比例的意義和基本性質,會解比例。 2、理解正比例和反比例的意義,能找出生活中成正比例和成反比例量的實例,能運用比例知識解決簡單的實際問題。 3、認識正比例關系的圖像,能根據給出的有正比例關系的數據在有坐標系的方格紙上畫出圖像,會根據其中一個量在圖像中找出或估計出另一個量的值。 4、了解比例尺,會求平面圖的比例尺以及根據比例尺求圖上距離或實際距離。 5、認識放大與縮小現象,能利用方格紙等形式按一定的比例將簡單圖形放大或縮小,體會圖形的相似。 6、滲透函數思想,使學生受到辯證唯物主義觀點的啟蒙教育 四、統計 1、會綜合應用學過的統計知識,能從統計圖中准確提取統計信息,能夠正確解釋統計結果。 2、能根據統計圖提供的信息,做出正確的判斷或簡單預測。 五、數學廣角 1、經歷「抽屜原理」的探究過程,初步了解「抽屜原理」,會用「抽屜原理」解決簡單的實際問題。 2、通過「抽屜原理」的靈活應用感受數學的魅力。 六、整理和復習 1、比較系統地掌握有關整數、小數、分數和百分數、負數、比和比例、方程的基礎知識。能比較熟練地進行整數、小數、分數的四則運算,能進行整數、小數加、減、乘、除的估算,會使用學過的簡便演算法,合理、靈活地進行計算;會解學過的方程;養成檢查和驗算的習慣
2、鞏固常用計量單位的表象,掌握所學單位間的進率,能夠進行簡單的改寫。 3、掌握所學幾何形體的特徵;能夠比較熟練地計算一些幾何形體的周長、面積和體積,並能應用;鞏固所學的簡單的畫圖、測量等技能;鞏固軸對稱圖形的認識,會畫一個圖形的對稱軸,鞏固圖形的平移、旋轉的認識;能用數對或根據方向和距離確定物體的位置,掌握有關比例尺的知識,並能應用。 4、掌握所學的統計初步知識,能夠看和繪制簡單的統計圖表,能夠根據數據做出簡單的判斷與預測,會求一些簡單事件的可能性,能夠解決一些計算平均數的實際問題。 5、進一步感受數學知識間的相互聯系,體會數學的作用;掌握所學的常見數量關系和解決問題的思考方法,能夠比較靈活地運用所學知識解決生活中一些簡單的實際問題。 (一)數的讀法和寫法 1. 整數的讀法:從高位到低位,一級一級地讀。讀億級、萬級時,先按照個級的讀法去讀,再在後面加一個「億」或「萬」字。每一級末尾的0都不讀出來,其它數位連續有幾個0都只讀一個零。 2. 整數的寫法:從高位到低位,一級一級地寫,哪一個數位上一個單位也沒有,就在那個數位上寫0。 3. 小數的讀法:讀小數的時候,整數部分按照整數的讀法讀,小數點讀作「點」,小數部分從左向右順次讀出每一位數位上的數字。 4. 小數的寫法:寫小數的時候,整數部分按照整數的寫法來寫,小數點寫在個位右下角,小數部分順次寫出每一個數位上的數字。 5. 分數的讀法:讀分數時,先讀分母再讀「分之」然後讀分子,分子和分母按照整數的讀法來讀。 6. 分數的寫法:先寫分數線,再寫分母,最後寫分子,按照整數的寫法來寫。 7. 百分數的讀法:讀百分數時,先讀百分之,再讀百分號前面的數,讀數時按照整數的讀法來讀。 8. 百分數的寫法:百分數通常不寫成分數形式,而在原來的分子後面加上百分號「%」來表示。 (二)數的改寫 一個較大的多位數,為了讀寫方便,常常把它改寫成用「萬」或「億」作單位的數。有時還可以根據需要,省略這個數某一位後面的數,寫成近似數。 1. 准確數:在實際生活中,為了計數的簡便,可以把一個較大的數改寫成以萬或億為單位的數。改寫後的數是原數的准確數。 例如把 1254300000 改寫成以萬做單位的數是 125430 萬;改寫成 以億做單位 的數 12.543 億。 2. 近似數:根據實際需要,我們還可以把一個較大的數,省略某一位後面的尾數,用一個近似數來表示。 例如: 1302490015 省略億後面的尾數是 13 億。 3. 四捨五入法:要省略的尾數的最高位上的數是4 或者比4小,就把尾數去掉;如果尾數的最高位上的數是5或者比5大,就把尾數捨去,並向它的前一位進1。例如:省略 345900 萬後面的尾數約是 35 萬。省略 4725097420 億後面的尾數約是 47 億。 4. 大小比較 1. 比較整數大小:比較整數的大小,位數多的那個數就大,如果位數相同,就看最高位,最高位上的數大,那個數就大;最高位上的數相同,就看下一位,哪一位上的數大那個數就大。 2. 比較小數的大小:先看它們的整數部分,,整數部分大的那個數就大;整數部分相同的,十分位上的數大的那個數就大;十分位上的數也相同的,百分位上的數大的那個數就大…… 3. 比較分數的大小:分母相同的分數,分子大的分數比較大;分子相同的數,分母小的分數大。分數的分母和分子都不相同的,先通分,再比較兩個數的大小。 (三)數的互化 1. 小數化成分數:原來有幾位小數,就在1的後面寫幾個零作分母,把原來的小數去掉小數點作分子,能約分的要約分。 2. 分數化成小數:用分母去除分子。能除盡的就化成有限小數,有的不能除盡,不能化成有限小數的,一般保留三位小數。 3. 一個最簡分數,如果分母中除了2和5以外,不含有其他的質因數,這個分數就能化成有限小數;如果分母中含有2和5 以外的質因數,這個分數就不能化成有限小數。 4. 小數化成百分數:只要把小數點向右移動兩位,同時在後面添上百分號。 5. 百分數化成小數:把百分數化成小數,只要把百分號去掉,同時把小數點向左移動兩位。 6. 分數化成百分數:通常先把分數化成小數(除不盡時,通常保留三位小數),再把小數化成百分數。 7. 百分數化成小數:先把百分數改寫成分數,能約分的要約成最簡分數。 (四)數的整除 1. 把一個合數分解質因數,通常用短除法。先用能整除這個合數的質數去除,一直除到商是質數為止,再把除數和商寫成連乘的形式。 2. 求幾個數的最大公約數的方法是:先用這幾個數的公約數連續去除,一直除到所得的商只有公約數1為止,然後把所有的除數連乘求積,這個積就是這幾個數的的最大公約數 。 3. 求幾個數的最小公倍數的方法是:先用這幾個數(或其中的部分數)的公約數去除,一直除到互質(或兩兩互質)為止,然後把所有的除數和商連乘求積,這個積就是這幾個數的最小公倍數。 4. 成為互質關系的兩個數:1和任何自然數互質 ; 相鄰的兩個自然數互質; 當合數不是質數的倍數時,這個合數和這個質數互質; 兩個合數的公約數只有1時,這兩個合數互質。 (五) 約分和通分 約分的方法:用分子和分母的公約數(1除外)去除分子、分母;通常要除到得出最簡分數為止。
通分的方法:先求出原來的幾個分數分母的最小公倍數,然後把各分數化成用這個最小公倍數作分母的分數。 小數 1 小數的意義 把整數1平均分成10份、100份、1000份…… 得到的十分之幾、百分之幾、千分之幾…… 可以用小數表示。 一位小數表示十分之幾,兩位小數表示百分之幾,三位小數表示千分之幾…… 一個小數由整數部分、小數部分和小數點部分組成。數中的圓點叫做小數點,小數點左邊的數叫做整數部分,小數點左邊的數叫做整數部分,小數點右邊的數叫做小數部分。 在小數里,每相鄰兩個計數單位之間的進率都是10。小數部分的最高分數單位「十分之一」和整數部分的最低單位「一」之間的進率也是10。 2小數的分類 純小數:整數部分是零的小數,叫做純小數。例如: 0.25 、 0.368 都是純小數。 帶小數:整數部分不是零的小數,叫做帶小數。 例如: 3.25 、 5.26 都是帶小數。 有限小數:小數部分的數位是有限的小數,叫做有限小數。 例如: 41.7 、 25.3 、 0.23 都是有限小數。 無限小數:小數部分的數位是無限的小數,叫做無限小數。 例如: 4.33 …… 3.1415926 …… 無限不循環小數:一個數的小數部分,數字排列無規律且位數無限,這樣的小數叫做無限不循環小數。 例如:∏ 循環小數:一個數的小數部分,有一個數字或者幾個數字依次不斷重復出現,這個數叫做循環小數。 例如: 3.555 …… 0.0333 …… 12.109109 …… 一個循環小數的小數部分,依次不斷重復出現的數字叫做這個循環小數的循環節。 例如: 3.99 ……的循環節是「 9 」 , 0.5454 ……的循環節是「 54 」 。 純循環小數:循環節從小數部分第一位開始的,叫做純循環小數。 例如: 3.111 …… 0.5656 …… 混循環小數:循環節不是從小數部分第一位開始的,叫做混循環小數。 3.1222 …… 0.03333 …… 寫循環小數的時候,為了簡便,小數的循環部分只需寫出一個循環節,並在這個循環節的首、末位數字上各點一個圓點。如果循環 節只有 一個數字,就只在它的上面點一個點。例如: 3.777 …… 簡寫作 0.5302302 …… 簡寫作 。 分數 1 分數的意義 把單位「1」平均分成若干份,表示這樣的一份或者幾份的數叫做分數。 在分數里,中間的橫線叫做分數線;分數線下面的數,叫做分母,表示把單位「1」平均分成多少份;分數線下面的數叫做分子,表示有這樣的多少份。 把單位「1」平均分成若干份,表示其中的一份的數,叫做分數單位。 2 分數的分類 真分數:分子比分母小的分數叫做真分數。真分數小於1。 假分數:分子比分母大或者分子和分母相等的分數,叫做假分數。假分數大於或等於1。 帶分數:假分數可以寫成整數與真分數合成的數,通常叫做帶分數。 3 約分和通分 把一個分數化成同它相等但是分子、分母都比較小的分數 ,叫做約分。 分子分母是互質數的分數,叫做最簡分數。 把異分母分數分別化成和原來分數相等的同分母分數,叫做通分 2、 1倍數×倍數=幾倍數 幾倍數÷1倍數=倍數幾倍數÷倍數=1倍數 3、 速度×時間=路程 路程÷速度=時間 路程÷時間=速度 4、 單價×數量=總價 總價÷單價=數量 總價÷數量=單價 5、 工作效率×工作時間=工作總量 工作總量÷工作效率=工作時間工作總量÷工作時間=工作效率 6、 加數+加數=和 和-一個加數=另一個加數
7、 被減數-減數=差 被減數-差=減數 差+減數=被減數 8、 因數×因數=積 積÷一個因數=另一個因數 9、 被除數÷除數=商 被除數÷商=除數 商×除數=被除數 小學數學圖形計算公式 1 、正方形 C周長 S面積 a邊長 周長=邊長×4 C=4a 面積=邊長×邊長 S=a×a 2 、正方體 V:體積 a:棱長 表面積=棱長×棱長×6 S表=a×a×6 體積=棱長×棱長×棱長 V=a×a×a 3 、長方形 C周長 S面積 a邊長 周長=(長+寬)×2 C=2(a+b) 面積=長×寬 S=ab 4 、長方體 V:體積 s:面積 a:長 b: 寬 h:高 (1)表面積(長×寬+長×高+寬×高)×2 S=2(ab+ah+bh) (2)體積=長×寬×高 V=abh 5 三角形 s面積 a底 h高 面積=底×高÷2 s=ah÷2 三角形高=面積 ×2÷底 三角形底=面積 ×2÷高 6 平行四邊形 s面積 a底 h高 面積=底×高 s=ah 7 梯形 s面積 a上底 b下底 h高 面積=(上底+下底)×高÷2 s=(a+b)× h÷2 8 圓形 S面積 C周長 ∏ d=直徑 r=半徑 (1)周長=直徑×∏=2×∏×半徑 C=∏d=2∏r (2)面積=半徑×半徑×∏ 9 圓柱體 v:體積 h:高 s;底面積 r:底面半徑 c:底面周長 (1)側面積=底面周長×高 (2)表面積=側面積+底面積×2 (3)體積=底面積×高 (4)體積=側面積÷2×半徑 10 圓錐體v:體積 h:高 s;底面積 r:底面半徑 體積=底面積×高÷3 總數÷總份數=平均數 和差問題的公式 (和+差)÷2=大數 (和-差)÷2=小數 和倍問題 和÷(倍數-1)=小數 小數×倍數=大數 (或者 和-小數=大數) 差倍問題 差÷(倍數-1)=小數 小數×倍數=大數 (或 小數+差=大數) 植樹問題 1 非封閉線路上的植樹問題主要可分為以下三種情形: ⑴如果在非封閉線路的兩端都要植樹,那麼: 株數=段數+1=全長÷株距-1 全長=株距×(株數-1) 株距=全長÷(株數-1) ⑵如果在非封閉線路的一端要植樹,另一端不要植樹,那麼: 株數=段數=全長÷株距 全長=株距×株數 株距=全長÷株數 ⑶如果在非封閉線路的兩端都不要植樹,那麼: 株數=段數-1=全長÷株距-1 全長=株距×(株數+1) 株距=全長÷(株數+1) 2 封閉線路上的植樹問題的數量關系如下 株數=段數=全長÷株距 全長=株距×株數 株距=全長÷株數 盈虧問題 (盈+虧)÷兩次分配量之差=參加分配的份數 (大盈-小盈)÷兩次分配量之差=參加分配的份數 (大虧-小虧)÷兩次分配量之差=參加分配的份數 相遇問題 相遇路程=速度和×相遇時間 相遇時間=相遇路程÷速度和 速度和=相遇路程÷相遇時間 追及問題 追及距離=速度差×追及時間 追及時間=追及距離÷速度差 速度差=追及距離÷追及時間 流水問題 順流速度=靜水速度+水流速度 逆流速度=靜水速度-水流速度 靜水速度=(順流速度+逆流速度)÷2 水流速度=(順流速度-逆流速度)÷2 濃度問題 溶質的重量+溶劑的重量=溶液的重量 溶質的重量÷溶液的重量×100%=濃度 溶液的重量×濃度=溶質的重量 溶質的重量÷濃度=溶液的重量 利潤與折扣問題 利潤=售出價-成本 利潤率=利潤÷成本×100%=(售出價÷成本-1)×100% 漲跌金額=本金×漲跌百分比 折扣=實際售價÷原售價×100%(折扣<1) 利息=本金×利率×時間 稅後利息=本金×利率×時間×(1-20%) 長度單位換算 1千米=1000米 1米=10分米 1分米=10厘米 1米=100厘米 1厘米=10毫米 面積單位換算 1平方千米=100公頃 1公頃=10000平方米 1平方米=100平方分米 1平方分米=100平方厘米 1平方厘米=100平方毫米 體(容)積單位換算 1立方米=1000立方分米 1立方分米=1000立方厘米 1立方分米=1升 1立方厘米=1毫升 1立方米=1000升 重量單位換算 1噸=1000 千克 1千克=1000克 1千克=1公斤 人民幣單位換算 1元=10角 1角=10分 1元=100分 時間單位換算 1世紀=100年 1年=12月 大月(31天)有:1\3\5\7\8\10\12月 小月(30天)的有:4\6\9\11月 平年2月28天, 閏年2月29天 平年全年365天, 閏年全年366天 1日=24小時 1時=60分 1分=60秒 1時=3600秒 小學數學幾何形體周長 面積 體積計算公式 1、長方形的周長=(長+寬)×2 C=(a+b)×2 2、正方形的周長=邊長×4 C=4a 3、長方形的面積=長×寬 S=ab 4、正方形的面積=邊長×邊長 S=a.a= a 5、三角形的面積=底×高÷2 S=ah÷2 6、平行四邊形的面積=底×高 S=ah 7、梯形的面積=(上底+下底)×高÷2 S=(a+b)h÷2 8、直徑=半徑×2 d=2r 半徑=直徑÷2 r= d÷2 9、圓的周長=圓周率×直徑=圓周率×半徑×2 c=πd =2πr 10、圓的面積=圓周率×半徑×半徑
❹ 現在是在校大學生,以後是一枚程序現在是在校大學生,以後是一枚程序員,演算法對編程重要嗎只掌握基本的
現在的話,演算法主要是為了練習編程技巧而去學的,也就是說為了練,項目中真正用的不是很多,即便要用也是早已經封裝好了調用就可以了,一句話,即便永遠用不到那些演算法也是要學的,這是個編程功底的問題,把那些著名的常用的演算法掌握後,在面對實際項目中需要編程技巧時就可以游刃有餘了。另外學習演算法除非了為了應付考試,可以慢慢學的,一個個來,一個個吃透它,不要學了個大概不久就忘。工作後可以買本演算法書當作枕邊書,沒事翻翻,望採納
❺ 需要C++ NXOPEN的入門教程
我覺得《The C++ Programming Language》是C++入門者的最佳讀物。理由如下:
1,入門書籍的選擇一定要慎之又慎,不然會大大影響初學者對C++的認識。好比在一塊木板上釘一顆釘子,如果開頭幾錘子敲下去就敲歪了,那麼以後要想糾正就非常困難了。很多人最後放棄學習C++,就是因為他們被一些不好的書所誤導,以至於他們還沒有來得及領略C++的恢宏與壯美就鳴金收兵了。這種情況非常令人可惜。有鑒於此,只要有人問我初學C++應該選那本書,我就會毫不猶豫地推薦由C++創始人Bjarne Stroustrup執筆的鴻篇巨制:《The C++ Programming Language》!之所以向大家推薦這本對於初學者而言可能略顯艱深的書籍,是因為:選擇C++作為學習對象的人一般都是下定決心專業從事軟體研發的技術人員。一般而言,他們對計算機領域的各種基礎知識是具備一定功底的。如果初學者並不想在程序設計領域深入地走下去,那麼,我不會推薦他學習C++,而會推薦他去學習其他語言。
2,不像市面上常見的一些強調學習過程短平快的編程書籍,學習這本書不要貪圖速成。因為C++本來就不是一門可以速成的語言。所謂的速成無非是僅僅學會C++的一丁點皮毛。《The C++ Programming Language》這本書可以長時期放在你的枕邊伴你入眠,它將伴隨著你度過編程生涯的每一個成長階段。因此買這本書的投資是絕對劃算的。表面上看,學習這樣的經典著作可能會很慢,會很吃力,但是我相信這才是真正的捷徑,因為它不會讓你走彎路,不會讓你在學習過程中一次又一次地糾正自己在閱讀其他低質量C++書籍過程中所慢慢形成的錯誤觀念,所以說:似遠實近!
3,OO觀念的初步建立是學習C++的前提,必須時刻用OO觀念去理解C++的設計決策。OO觀念的核心有三條:封裝,繼承,多態。網上關於OO基本觀念的介紹也是多如牛毛。初學者不必急於一下子完全理解它們,因為OO觀念的深刻理解只能從長時期的思考和實踐過程中獲得。這本書的最大特點就是在引入C++各項語法特徵的過程中特別注重交待清楚它們的來龍去脈,尤具價值的是,書中每一章後面都給出了極其實用的編程建議(Advice),這些編程建議是國內那些C++作者不可能寫得出來的。我這么說絕對不是崇洋媚外。如果說中國的IT技術水平落後國外20年的話,那麼中國的IT教育水平至少要落後國外30年。中國目前在IT技術寫作領域沒有哪一個稱得上是大師級別的原創技術作家,大多是靠剪刀加漿糊吃飯的。檔次低一點的,直接抄襲和拼湊國外名家的作品;檔次高一點的,熟讀一下技術標准和規范,然後再翻譯成中文,就變成著作了。
4,讀完國內作者寫的C++書籍之後,你很難獲得一種C++究竟強大在何處的認識,好像你只不過是在熟悉一種普通編程語言的語法細節罷了。很多人發出這樣的疑問:絕大多數C++的語法概念其他語言也有,比如函數的概念,結構的概念,子程序的概念,類的概念等等,那麼究竟是什麼樣的的特性使得C++成為了目前最具有影響力的編程語言之一呢?這是那些國內C++書籍所不能告訴你的。國內C++書籍大量的著墨點基本上全部落在各種編程語言都具有的這些共性上面,基本上沒有看見過有哪本書專門介紹過C++所獨具的「特性」。為什麼這些作者不講呢?那是因為C++獨具的「特性」通常隱藏於C++的整體設計之中,如果不是像Bjarne Stroustrup那樣的骨灰級C++大師,一般的中國作者絕對不可能具備俯瞰C++設計全局的能力。
5,各種編程語言的語法共性基本上人人都可以在很短時間內熟練掌握。關於C++的入門語法介紹,網上免費資料暴多,初學者完全可以一邊跟隨著這些入門資料的指導,一邊在電腦上敲敲打打,從而快速度過學習一門語言的語法熟悉階段。一旦初學者在短時間內熟悉了C++的基本語法,那麼這些國內作者編寫的C++書籍基本上就可以束之高閣了。因為這些書籍大多沒有什麼思想價值,作為技術手冊參考一下勉強可以,但如果用來深入掌握C++就只能說是緣木求魚了。況且這些書通常並不便宜,一般也要30-50元人民幣。同學們一般資金有限,所謂好鋼要用在刀刃上,與其買一本利用價值不高的書,還不如加一點點錢去購買真正經典的書籍。所以我絕對不會推薦初學者去購買國內作者寫的C++書籍。
6,不是說中國在IT領域沒有高手,就我所知,中國的技術高手還是有不少的,但是願意把自己的寶貴經驗和心得體會用筆寫成書的高手我就極少看到過了。首先,這些經年累月積累下來的知識財富對於一個吃技術飯的人來說實在太寶貴,寫成書公開對作者而言實在太吃虧。希望大家承認並接受這個事實。知識本來就具有財產的屬性,不然「知識產權」一詞從何而來?其次,寫書很花時間,基本上是一件燃燒自己照亮別人的雷鋒行為。當然,這里的寫書指的是作者毫無保留地把自己的精華經驗寫出來而不是為了斂財而瞎編。最後,目前在中國,通過奉獻自己的技術經驗來獲得合理的收益和報酬還不現實,中國還不具備產生專職技術作家的土壤,原因是多方面的,大家都明白。
7,為什麼國外有那麼多高手願意寫書呢?原因有多種。一、國外有良好的知識產權保護制度,技術高手可以通過寫書來獲得不低於當一個資深工程師的收入。二、國外的技術積累實在太雄厚,有些東西在中國可能是技術秘密,但是對於國外作家而言,算不上是技術秘密,因此可以寫成書公開。三、對某些作家而言,他公布自己的經驗越多,對自己越有利。比如Bjarne Stroustrup,很顯然,對他來說,全世界使用C++的程序員越多,他的地位就越不可動搖。所以,Bjarne Stroustrup完全可以把自己關於C++的一切技術思考和經驗毫無保留地告訴給全世界的C++程序員。微軟和SUN免費公布自己的技術規范也是同樣道理。所以在國外,作者,讀者,出版商共同構成了一個良性循環的知識生態系統。毫無疑問,這樣的結果必定是多贏。但是,請牢記,真正有商業價值的技術你絕對不可能通過買書學習來獲得,比如,你絕對不可能在市面上買到Adobe公司關於字體引擎的演算法講解書籍。要是你恰恰需要這些技術怎麼辦?回答是:購買!買不起或者買不到就只有脫下外套挽起袖子自己來搞了。沒有技術的封鎖就沒有技術的進步,這又是一個需要用辯證法來解釋的問題。
8,我相信,只有通過精讀C++創始人撰寫的這本書,你才可以最准確地理解和把握C++區別於其他語言的精髓。Bjarne Stroustrup不僅僅介紹了C++的語法,更重要的是全面闡釋了C++各種基本設施的設計動機以及在應用過程中應當注意避免那些問題。這本書不僅僅告訴你How,更重要的是他會告訴你Why!況且,世界上沒有哪個人能比Bjarne Stroustrup更加了解C++!世界上也沒有哪個人能比Bjarne Stroustrup把C++闡釋得更加清楚!這就是我為什麼強烈推薦此書的最根本理由!我覺得學習C++的過程中最好時刻審問自己:C++中的某些規范為什麼要這么制定?比如:為什麼要搞運算符重載?為什麼要保留廣受詬病的多重繼承機制?等等。思考這些問題就是在揣摩C++標准委員會的設計意圖,而這些設計意圖實際上深刻地反映了工業界所面臨的各種現實問題。
9,是否懂得C語言並不是學習C++的前提。不僅僅是因為C++本身兼容C語言,更重要的是C++所倡導的程序設計觀念是和C語言完全不同的。C語言在某種意義上是對CPU模型的抽象。盡管C++完全保留了C語言的機器模型,但是C++更加註重對現實世界進行抽象。為此,C++創始人Bjarne Stroustrup專門寫過一篇著名的文章:《Learning Standard C++ as a New Language》(把標准C++作為一種全新的語言來學習)
❻ C++入門看什麼書好啊
我覺得《The C++ Programming Language》是C++入門者的最佳讀物。理由如下:
1,入門書籍的選擇一定要慎之又慎,不然會大大影響初學者對C++的認識。好比在一塊木板上釘一顆釘子,如果開頭幾錘子敲下去就敲歪了,那麼以後要想糾正就非常困難了。很多人最後放棄學習C++,就是因為他們被一些不好的書所誤導,以至於他們還沒有來得及領略C++的恢宏與壯美就鳴金收兵了。這種情況非常令人可惜。有鑒於此,只要有人問我初學C++應該選那本書,我就會毫不猶豫地推薦由C++創始人Bjarne Stroustrup執筆的鴻篇巨制:《The C++ Programming Language》!之所以向大家推薦這本對於初學者而言可能略顯艱深的書籍,是因為:選擇C++作為學習對象的人一般都是下定決心專業從事軟體研發的技術人員。一般而言,他們對計算機領域的各種基礎知識是具備一定功底的。如果初學者並不想在程序設計領域深入地走下去,那麼,我不會推薦他學習C++,而會推薦他去學習其他語言。
2,不像市面上常見的一些強調學習過程短平快的編程書籍,學習這本書不要貪圖速成。因為C++本來就不是一門可以速成的語言。所謂的速成無非是僅僅學會C++的一丁點皮毛。《The C++ Programming Language》這本書可以長時期放在你的枕邊伴你入眠,它將伴隨著你度過編程生涯的每一個成長階段。因此買這本書的投資是絕對劃算的。表面上看,學習這樣的經典著作可能會很慢,會很吃力,但是我相信這才是真正的捷徑,因為它不會讓你走彎路,不會讓你在學習過程中一次又一次地糾正自己在閱讀其他低質量C++書籍過程中所慢慢形成的錯誤觀念,所以說:似遠實近!
3,OO觀念的初步建立是學習C++的前提,必須時刻用OO觀念去理解C++的設計決策。OO觀念的核心有三條:封裝,繼承,多態。網上關於OO基本觀念的介紹也是多如牛毛。初學者不必急於一下子完全理解它們,因為OO觀念的深刻理解只能從長時期的思考和實踐過程中獲得。這本書的最大特點就是在引入C++各項語法特徵的過程中特別注重交待清楚它們的來龍去脈,尤具價值的是,書中每一章後面都給出了極其實用的編程建議(Advice),這些編程建議是國內那些C++作者不可能寫得出來的。我這么說絕對不是崇洋媚外。如果說中國的IT技術水平落後國外20年的話,那麼中國的IT教育水平至少要落後國外30年。中國目前在IT技術寫作領域沒有哪一個稱得上是大師級別的原創技術作家,大多是靠剪刀加漿糊吃飯的。檔次低一點的,直接抄襲和拼湊國外名家的作品;檔次高一點的,熟讀一下技術標准和規范,然後再翻譯成中文,就變成著作了。
4,讀完國內作者寫的C++書籍之後,你很難獲得一種C++究竟強大在何處的認識,好像你只不過是在熟悉一種普通編程語言的語法細節罷了。很多人發出這樣的疑問:絕大多數C++的語法概念其他語言也有,比如函數的概念,結構的概念,子程序的概念,類的概念等等,那麼究竟是什麼樣的的特性使得C++成為了目前最具有影響力的編程語言之一呢?這是那些國內C++書籍所不能告訴你的。國內C++書籍大量的著墨點基本上全部落在各種編程語言都具有的這些共性上面,基本上沒有看見過有哪本書專門介紹過C++所獨具的「特性」。為什麼這些作者不講呢?那是因為C++獨具的「特性」通常隱藏於C++的整體設計之中,如果不是像Bjarne Stroustrup那樣的骨灰級C++大師,一般的中國作者絕對不可能具備俯瞰C++設計全局的能力。
5,各種編程語言的語法共性基本上人人都可以在很短時間內熟練掌握。關於C++的入門語法介紹,網上免費資料暴多,初學者完全可以一邊跟隨著這些入門資料的指導,一邊在電腦上敲敲打打,從而快速度過學習一門語言的語法熟悉階段。一旦初學者在短時間內熟悉了C++的基本語法,那麼這些國內作者編寫的C++書籍基本上就可以束之高閣了。因為這些書籍大多沒有什麼思想價值,作為技術手冊參考一下勉強可以,但如果用來深入掌握C++就只能說是緣木求魚了。況且這些書通常並不便宜,一般也要30-50元人民幣。同學們一般資金有限,所謂好鋼要用在刀刃上,與其買一本利用價值不高的書,還不如加一點點錢去購買真正經典的書籍。所以我絕對不會推薦初學者去購買國內作者寫的C++書籍。
6,不是說中國在IT領域沒有高手,就我所知,中國的技術高手還是有不少的,但是願意把自己的寶貴經驗和心得體會用筆寫成書的高手我就極少看到過了。首先,這些經年累月積累下來的知識財富對於一個吃技術飯的人來說實在太寶貴,寫成書公開對作者而言實在太吃虧。希望大家承認並接受這個事實。知識本來就具有財產的屬性,不然「知識產權」一詞從何而來?其次,寫書很花時間,基本上是一件燃燒自己照亮別人的雷鋒行為。當然,這里的寫書指的是作者毫無保留地把自己的精華經驗寫出來而不是為了斂財而瞎編。最後,目前在中國,通過奉獻自己的技術經驗來獲得合理的收益和報酬還不現實,中國還不具備產生專職技術作家的土壤,原因是多方面的,大家都明白。
7,為什麼國外有那麼多高手願意寫書呢?原因有多種。一、國外有良好的知識產權保護制度,技術高手可以通過寫書來獲得不低於當一個資深工程師的收入。二、國外的技術積累實在太雄厚,有些東西在中國可能是技術秘密,但是對於國外作家而言,算不上是技術秘密,因此可以寫成書公開。三、對某些作家而言,他公布自己的經驗越多,對自己越有利。比如Bjarne Stroustrup,很顯然,對他來說,全世界使用C++的程序員越多,他的地位就越不可動搖。所以,Bjarne Stroustrup完全可以把自己關於C++的一切技術思考和經驗毫無保留地告訴給全世界的C++程序員。微軟和SUN免費公布自己的技術規范也是同樣道理。所以在國外,作者,讀者,出版商共同構成了一個良性循環的知識生態系統。毫無疑問,這樣的結果必定是多贏。但是,請牢記,真正有商業價值的技術你絕對不可能通過買書學習來獲得,比如,你絕對不可能在市面上買到Adobe公司關於字體引擎的演算法講解書籍。要是你恰恰需要這些技術怎麼辦?回答是:購買!買不起或者買不到就只有脫下外套挽起袖子自己來搞了。沒有技術的封鎖就沒有技術的進步,這又是一個需要用辯證法來解釋的問題。
8,我相信,只有通過精讀C++創始人撰寫的這本書,你才可以最准確地理解和把握C++區別於其他語言的精髓。Bjarne Stroustrup不僅僅介紹了C++的語法,更重要的是全面闡釋了C++各種基本設施的設計動機以及在應用過程中應當注意避免那些問題。這本書不僅僅告訴你How,更重要的是他會告訴你Why!況且,世界上沒有哪個人能比Bjarne Stroustrup更加了解C++!世界上也沒有哪個人能比Bjarne Stroustrup把C++闡釋得更加清楚!這就是我為什麼強烈推薦此書的最根本理由!我覺得學習C++的過程中最好時刻審問自己:C++中的某些規范為什麼要這么制定?比如:為什麼要搞運算符重載?為什麼要保留廣受詬病的多重繼承機制?等等。思考這些問題就是在揣摩C++標准委員會的設計意圖,而這些設計意圖實際上深刻地反映了工業界所面臨的各種現實問題。
9,是否懂得C語言並不是學習C++的前提。不僅僅是因為C++本身兼容C語言,更重要的是C++所倡導的程序設計觀念是和C語言完全不同的。C語言在某種意義上是對CPU模型的抽象。盡管C++完全保留了C語言的機器模型,但是C++更加註重對現實世界進行抽象。為此,C++創始人Bjarne Stroustrup專門寫過一篇著名的文章:《Learning Standard C++ as a New Language》(把標准C++作為一種全新的語言來學習)
❼ C/C++是先學C語言好還是先學C++好
如果你是個新手,想學好C語言我建議你先學C語言並從如下幾個步驟著手!
一,題書結合!
如果你在看C語言教程時可以找一些對應知識點的練習做下,如果那個題搞不懂就多看看書中的知識點!看幾回你就會知道一些了!
二,學好C語言的運算符和運算順序
這是學好《C程序設計》的基礎,C語言的運算非常靈活,功能十分豐富,運算種類遠多於其它程序設計語言。在表達式方面較其它程序語言更為簡潔,如自加、自減、逗號運算和三目運算使表達式更為簡單,但初學者往往會覺的這種表達式難讀,關鍵原因就是對運算符和運算順序理解不透不全。當多種不同運算組成一個運算表達式,即一個運算式中出現多種運算符時,運算的優先順序和結合規則顯得十分重要。在學習中,只要我們對此合理進行分類,找出它們與我們在數學中所學到運算之間的不同點之後,記住這些運算也就不困難了,有些運算符在理解後更會牢記心中,將來用起來得心應手,而有些可暫時放棄不記,等用到時再記不遲。
先要明確運算符按優先順序不同分類,《C程序設計》運算符可分為15種優先順序,從高到低,優先順序為1 ~ 15,除第2、3級和第14級為從右至左結合外,其它都是從左至右結合,它決定同級運算符的運算順序。下面我們通過幾個例子來說明:
(1)5*8/4%10 這個表達式中出現3種運算符,是同級運算符,運算順序按從左至右結合,因此先計算5 *8=40,然後被4除,結果為10,最後是%(求余數)運算,所以表達式的最終結果為10%10 = 0;
(2)a = 3;b = 5;c =++ a* b ;d =a + +* b;
對於c=++a*b來說,按表中所列順序,+ +先執行,*後執行,所以+ + a執行後,a的值為4,由於+ +為前置運算,所以a的值4參與運算,C的值計算式為4*5=20而不是3*5=15了;而對於d=a++*b來說,由於a + +為後置運算,所以a值為4參與運算,使得d的值仍為20,而a參與運算後其值加1,值為5。 這個例子執行後,a的值為5,b的值為5,c的值為20,d的值也是20;
(3)(a = 3,b = 5,b+ = a,c = b* 5)
例子中的「,」是逗號結合運算,上式稱為逗號表達式,自左向右結合,最後一個表達式的結果值就是逗號表達式的結果,所以上面的逗號表達式結果為40,a的值為3,b的值為8,c的值為40。
(4)a=5;b=6;c=a>b?a:b;
例中的a>b?a:b是一個三目運算,它的功能是先做關系運算a>b部分,若結果為真,則取問號後a的值,否則取冒號後b的值,因此c的值應該為6,這個運算可以用來代替if…else…語句的簡單應用。
三,學好C語言的四種程序結構
要把C語言的語法知識記住,因為編程都是以此為基礎的!
四,多上機調試
自已寫好代碼後多在機子去調試,認真想想為什麼會錯?
不要為得出結果而上機輸入代碼去驗證,一定要分析錯的原因!
五,C語言對英語的要求
其實英語不好並不影響C語言的學習,因為C語言的英語都是些關建字,很容易記,看多了就知道了!
另外譚浩強的《c語言程序設計>>這本書也很不錯的,你可以到學校的圖書館找了看!
最後祝你學習進步!
❽ 不懂編程學C++,推薦看哪本書
如何學習C++成長路線:
要提高寫程序的能力只能通過多練習。多寫和調試一些程序,從簡單的做起,多讀一些常式。C++是C的延伸,我覺得C是基礎。用C能夠熟練地寫程序以後,再逐漸接觸C++的程序設計理念可能更好一些。
人類的語言是工具,計算機語言也是工具.掌握工具的最好的辦法是做個(稍微大點的)東西,這樣對語言會有更好的理解,知道它能做什麼不能作什麼,然後才是做什麼工程選什麼工具.剛開始學語言的時候常常背語法,其實更重要的是練習練習再(大點的)練習.
C++比較難一點,不要想著走捷徑。但是可以減少走彎路。
我覺得《The C++ Programming Language》是C++入門者的最佳讀物。理由如下:
1,入門書籍的選擇一定要慎之又慎,不然會大大影響初學者對C++的認識。好比在一塊木板上釘一顆釘子,如果開頭幾錘子敲下去就敲歪了,那麼以後要想糾正就非常困難了。很多人最後放棄學習C++,就是因為他們被一些不好的書所誤導,以至於他們還沒有來得及領略C++的恢宏與壯美就鳴金收兵了。這種情況非常令人可惜。有鑒於此,只要有人問我初學C++應該選那本書,我就會毫不猶豫地推薦由C++創始人Bjarne Stroustrup執筆的鴻篇巨制:《The C++ Programming Language》!之所以向大家推薦這本對於初學者而言可能略顯艱深的書籍,是因為:選擇C++作為學習對象的人一般都是下定決心專業從事軟體研發的技術人員。一般而言,他們對計算機領域的各種基礎知識是具備一定功底的。如果初學者並不想在程序設計領域深入地走下去,那麼,我不會推薦他學習C++,而會推薦他去學習其他語言。
2,不像市面上常見的一些強調學習過程短平快的編程書籍,學習這本書不要貪圖速成。因為C++本來就不是一門可以速成的語言。所謂的速成無非是僅僅學會C++的一丁點皮毛。《The C++ Programming Language》這本書可以長時期放在你的枕邊伴你入眠,它將伴隨著你度過編程生涯的每一個成長階段。因此買這本書的投資是絕對劃算的。表面上看,學習這樣的經典著作可能會很慢,會很吃力,但是我相信這才是真正的捷徑,因為它不會讓你走彎路,不會讓你在學習過程中一次又一次地糾正自己在閱讀其他低質量C++書籍過程中所慢慢形成的錯誤觀念,所以說:似遠實近!
3,OO觀念的初步建立是學習C++的前提,必須時刻用OO觀念去理解C++的設計決策。OO觀念的核心有三條:封裝,繼承,多態。網上關於OO基本觀念的介紹也是多如牛毛。初學者不必急於一下子完全理解它們,因為OO觀念的深刻理解只能從長時期的思考和實踐過程中獲得。這本書的最大特點就是在引入C++各項語法特徵的過程中特別注重交待清楚它們的來龍去脈,尤具價值的是,書中每一章後面都給出了極其實用的編程建議(Advice),這些編程建議是國內那些C++作者不可能寫得出來的。我這么說絕對不是崇洋媚外。如果說中國的IT技術水平落後國外20年的話,那麼中國的IT教育水平至少要落後國外30年。中國目前在IT技術寫作領域沒有哪一個稱得上是大師級別的原創技術作家,大多是靠剪刀加漿糊吃飯的。檔次低一點的,直接抄襲和拼湊國外名家的作品;檔次高一點的,熟讀一下技術標准和規范,然後再翻譯成中文,就變成著作了。
4,讀完國內作者寫的C++書籍之後,你很難獲得一種C++究竟強大在何處的認識,好像你只不過是在熟悉一種普通編程語言的語法細節罷了。很多人發出這樣的疑問:絕大多數C++的語法概念其他語言也有,比如函數的概念,結構的概念,子程序的概念,類的概念等等,那麼究竟是什麼樣的的特性使得C++成為了目前最具有影響力的編程語言之一呢?這是那些國內C++書籍所不能告訴你的。國內C++書籍大量的著墨點基本上全部落在各種編程語言都具有的這些共性上面,基本上沒有看見過有哪本書專門介紹過C++所獨具的「特性」。為什麼這些作者不講呢?那是因為C++獨具的「特性」通常隱藏於C++的整體設計之中,如果不是像Bjarne Stroustrup那樣的骨灰級C++大師,一般的中國作者絕對不可能具備俯瞰C++設計全局的能力。
5,各種編程語言的語法共性基本上人人都可以在很短時間內熟練掌握。關於C++的入門語法介紹,網上免費資料暴多,初學者完全可以一邊跟隨著這些入門資料的指導,一邊在電腦上敲敲打打,從而快速度過學習一門語言的語法熟悉階段。一旦初學者在短時間內熟悉了C++的基本語法,那麼這些國內作者編寫的C++書籍基本上就可以束之高閣了。因為這些書籍大多沒有什麼思想價值,作為技術手冊參考一下勉強可以,但如果用來深入掌握C++就只能說是緣木求魚了。況且這些書通常並不便宜,一般也要30-50元人民幣。同學們一般資金有限,所謂好鋼要用在刀刃上,與其買一本利用價值不高的書,還不如加一點點錢去購買真正經典的書籍。所以我絕對不會推薦初學者去購買國內作者寫的C++書籍。
6,不是說中國在IT領域沒有高手,就我所知,中國的技術高手還是有不少的,但是願意把自己的寶貴經驗和心得體會用筆寫成書的高手我就極少看到過了。首先,這些經年累月積累下來的知識財富對於一個吃技術飯的人來說實在太寶貴,寫成書公開對作者而言實在太吃虧。希望大家承認並接受這個事實。知識本來就具有財產的屬性,不然「知識產權」一詞從何而來?其次,寫書很花時間,基本上是一件燃燒自己照亮別人的雷鋒行為。當然,這里的寫書指的是作者毫無保留地把自己的精華經驗寫出來而不是為了斂財而瞎編。最後,目前在中國,通過奉獻自己的技術經驗來獲得合理的收益和報酬還不現實,中國還不具備產生專職技術作家的土壤,原因是多方面的,大家都明白。
7,為什麼國外有那麼多高手願意寫書呢?原因有多種。一、國外有良好的知識產權保護制度,技術高手可以通過寫書來獲得不低於當一個資深工程師的收入。二、國外的技術積累實在太雄厚,有些東西在中國可能是技術秘密,但是對於國外作家而言,算不上是技術秘密,因此可以寫成書公開。三、對某些作家而言,他公布自己的經驗越多,對自己越有利。比如Bjarne Stroustrup,很顯然,對他來說,全世界使用C++的程序員越多,他的地位就越不可動搖。所以,Bjarne Stroustrup完全可以把自己關於C++的一切技術思考和經驗毫無保留地告訴給全世界的C++程序員。微軟和SUN免費公布自己的技術規范也是同樣道理。所以在國外,作者,讀者,出版商共同構成了一個良性循環的知識生態系統。毫無疑問,這樣的結果必定是多贏。但是,請牢記,真正有商業價值的技術你絕對不可能通過買書學習來獲得,比如,你絕對不可能在市面上買到Adobe公司關於字體引擎的演算法講解書籍。要是你恰恰需要這些技術怎麼辦?回答是:購買!買不起或者買不到就只有脫下外套挽起袖子自己來搞了。沒有技術的封鎖就沒有技術的進步,這又是一個需要用辯證法來解釋的問題。
8,我相信,只有通過精讀C++創始人撰寫的這本書,你才可以最准確地理解和把握C++區別於其他語言的精髓。Bjarne Stroustrup不僅僅介紹了C++的語法,更重要的是全面闡釋了C++各種基本設施的設計動機以及在應用過程中應當注意避免那些問題。這本書不僅僅告訴你How,更重要的是他會告訴你Why!況且,世界上沒有哪個人能比Bjarne Stroustrup更加了解C++!世界上也沒有哪個人能比Bjarne Stroustrup把C++闡釋得更加清楚!這就是我為什麼強烈推薦此書的最根本理由!我覺得學習C++的過程中最好時刻審問自己:C++中的某些規范為什麼要這么制定?比如:為什麼要搞運算符重載?為什麼要保留廣受詬病的多重繼承機制?等等。思考這些問題就是在揣摩C++標准委員會的設計意圖,而這些設計意圖實際上深刻地反映了工業界所面臨的各種現實問題。
9,是否懂得C語言並不是學習C++的前提。不僅僅是因為C++本身兼容C語言,更重要的是C++所倡導的程序設計觀念是和C語言完全不同的。C語言在某種意義上是對CPU模型的抽象。盡管C++完全保留了C語言的機器模型,但是C++更加註重對現實世界進行抽象。為此,C++創始人Bjarne Stroustrup專門寫過一篇著名的文章:《Learning Standard C++ as a New Language》(把標准C++作為一種全新的語言來學習)