㈠ 學習c語言究竟要怎麼樣才算精通
C語言裡面東西從易到難也多,先要入門,掌握基本的幾個東西, 背根本沒用的,頂多有點印象,舉例Helloworld程序, stdio.h是什麼意思, standard input output的縮寫,就是基本輸入輸出,#include 字面意思 包含了這個工具, 有這個工具,你才能在命令行標准列印字元數字。總之就是理解,背這種方法對於時間不多的你等於浪費時間,推薦C語言之父的 C教程。《The C Programming Language》也就是這本書,慢慢看,看不懂的邊寫例子邊反復看。一直反復看,配合好的視頻教程, 我之前看過的一個入門級別的《好爽,C語言》他講的做入門就很好。
本文採用思維導圖的方式撰寫,更好的表述了各知識點之間的關系,方便大家理解和記憶。這個總結尚未包含C語言數據結構與演算法部分,後續會陸續更新出來,文中有漏掉的知識點,還請大家多多指正。
總體上必須清楚的:
1)程序結構是三種: 順序結構 、選擇結構(分支結構)、循環結構。
2)讀程序都要從main()入口, 然後從最上面順序往下讀(碰到循環做循環,碰到選擇做選擇),有且只有一個main函數。
3)計算機的數據在電腦中保存是以二進制的形式. 數據存放的位置就是 他的地址.
4)bit是位 是指為0 或者1。 byte 是指位元組, 一個位元組 = 八個位.
易混淆的概念:
1)編譯預處理不是C語言的一部分,不佔運行時間,不要加分號。C語言編譯的程序稱為源程序,它以ASCII數值存放在文本文件中。
2)#define PI 3.1415926; 這個寫法是錯誤的,一定不能出現分號。
define a 1+2 define a (1+2)
a=a*a=1+2*1+2=5 a=a*a=3*3=9
3)每個C語言程序中main函數是有且只有一個。
4)在函數中不可以再定義函數。
5)演算法:可以沒有輸入,但是一定要有輸出。
6)break可用於循環結構和switch語句。
7)逗號運算符的級別最低,賦值的級別倒數第二。
知識難點:
1)指針部分。
2)數組部分.
3)函數棧幀的創建與銷毀。
4)可變參數列表。
這些難點:我都有專門的博客詳細介紹了,大家可以自行查看:
學習C語言的幾個建議:
1. 找個東東帶你入門。這個東東可以是老師,可以是書籍,可以是視頻,可以是講義,可以是一切的東東。如果是老師,最好是經歷過實際編程項目的人,他們經驗多,可以教會你很多。學校里的老師嘛,很多都是理論夢想家,恐怕教不出你實際的東西。書籍,我建議盡量看國外大牛寫的,國內的教材還是少看為好!這里我說下譚教授的教材。我當初學習C語言時教材就是教授的教材,寫的比較通俗易懂,最起碼把我領進了門。當入門了以後,想進一步提高自己的水平,就不要死摳著教授的教材了,可以看看國外大牛們的書了。
2. 入門了,當你坐在電腦前,你不一定會立即就能寫出代碼。不過沒關系,你可以先從敲一些很簡單的代碼開始練起。給自己找一些簡單的小需求,比如高校里的課程設計要求做的項目啊,自己去網上找一些別人提的需求啊等。尤其現在有很多的開源項目,你可以多看看人家的思路和技巧;
3. 多總結,多分享。你在編程中,肯定會遇到很多困難,走了很多彎路,把它們寫出來,總結出來,拿出來跟別人討論,這期間肯定有人會鄙視你,嘲笑你的技術,別放心上,誰沒有個菜鳥期,他們生下來就是高手嗎?
4. 參與到項目中。這個項目不管是公司分配的也好,不管是開源的也好,用心去做,做的過程慢慢琢磨,慢慢摸索,不斷向周圍的人請教,學習!
其實說了這么多,無非就是兩個字「練習」,四個字「持之以恆」!很多人就是沒有那個心坐下來,堅持不下去。
㈡ 我今年14歲,我想學習編程,這是我的夢想!!我看了看很多編程語言,不知道哪種好...
Pascal吧。
以法國數學家命名的Pascal語言現已成為使用最廣泛的語言之一,其主要特點有:嚴格的結構化形式;豐富完備的數據類型;運行效率高;查錯能力強。 Pascal強調的結構化編程帶來了非結構化語言如Fortran之流無法比擬的美和樂趣,Unix崇尚的「小即是美」、「沒有消息就是好消息」。
正因為上述特點,Pascal語言可以被方便地用於描述各種演算法與數據結構。尤其是對於程序設計的初學者,Pascal語言有益於培養良好的程序設計風格和習慣。IOI(國際奧林匹克信息學競賽)把Pascal語言作為三種程序設計語言之一,NOI(全國奧林匹克信息學競賽)把Pascal語言和c語言、c++語言作為競賽使用程序設計語言,在大學中Pascal語言也常常被用作學習數據結構與演算法的教學語言。
發展歷程
ps:高級語言發展過程中,Pascal是一個重要的里程碑。Pascal語言是第一個系統地體現了E.W.Dijkstra和C.A.R.Hoare定義的結構化程序設計概念的語言。
在Pascal問世以來的三十餘年間,先後產生了適合於不同機型的各種各樣版本。其中影響最大的莫過於Turbo Pascal系列軟體。它是由美國Borland公司設計、研製的一種適用於微機的Pascal編譯系統。該編譯系統由1983年推出1.0版本發展到1992年推出的7.0版本,其版本不斷更新,而功能更趨完善。
Pascal有5個主要的版本,分別是Unextended Pascal、Extended Pascal、Object-Oriented Extensions to Pascal、Object Pascal 和 Delphi。其中,Unextended Pascal、Extended Pascal和Object-Oriented Extensions to Pascal是由Pascal標准委員會所創立和維護的,Unextended Pascal類似於瑞士Niklaus Wirth教授和K.Jensen於1974年聯名發表的Pascal用戶手冊和報告,而Extended Pascal則是在其基礎上進行了擴展,加入了許多新的特性,它們都屬於正式的Pascal標准;Object-Oriented Extensions to Pascal是由Pascal標准委員會發表的一份技術報告,在Extended Pascal的基礎上增加了一些用以支持面向對象程序設計的特性,但它屬於非正式的標准。Delphi 是由Borland公司專門為其開發的編譯工具(也叫Delphi)設計的Pascal語言, Delphi 不是正式的Pascal標准,具有專利性。但由於Turbo Pascal系列和Delphi功能強大並且廣為流行,Delphi 已自成為一種標准,為許多人所熟悉。
㈢ 我要學電腦,剛開始看C語言的書,不知道往後學和數學有多大的關系
問題: 我想自學計算機科學,應該怎樣開始?
--------------------------------------------------------------------------------
答案:
以學計算機專業為例,許多大學生認為學最新的計算機語言、技術、標準是最好的鋪路方法,因為許多公司招聘時要求這些方面的經驗。這些新技術雖然該學,但是學習計算機基礎課程更重要,因為計算機語言和開發平台日新月異,但是萬變不離其宗的就是那些基礎課程:數據結構、演算法、編譯原理、計算機組成、關系型資料庫原理等。有位同學生動地在「開復學生網」上把這些基礎課程比擬為內功,把新的語言、技術、標准比擬為外功。只追尋時髦的學生最後只懂招式,沒有功力,是不可能成為高手的。
想系統地學習計算機科學,可以從三方面起步:
1 數學。
離散數學 (包括集合論,圖論,數理邏輯,等等),線性代數,概率統計。我覺得數學分析和微積分與軟體及計算機科學本身關系不大,也許在一些計算機應用中有用。但是,數學分析的思想精髓,值得一看。
2 軟體
可以從數據結構,操作系統,演算法和程序設計語言開始。程序設計語言可以從C學起。
3 另外
通過對計算機組成及框架結構的學習,可以對計算機硬體略知一二。
有 了這些基礎,然後可以向編譯原理,資料庫,人工智慧,圖形學,網路,軟體工程,等等方向擴展。一個很好的辦法是參考大學計算機系的課程安排,當然自學的時 候取捨更加靈活一些。另外,你也許可以去旁聽一些計算機系的課程,並和授課的老師多多接觸,看看有沒有轉系或者選修其雙學位的機會。
計算機能力不一定是通過證書來評價的。當然證書也是一個方面。計算機學習應用領域主要看書、上網找資料這些方面學習的。當然培訓也是一個快速的方法。
在計算機專業上面有什麼問題,可以去比如「新聞組(http://www.microsoft.com/china/commuity),或者專門的一些BBS比如(http://forum.diyinside.com),上面去多看看,相信你回有收獲的
還可以到微軟社區看帖子、到微軟技術網站看文章,都能取得不錯的效果。
我們DIY Inside的公益社區還會在微軟社區以及其他機構的協助下在各大城市(北京、上海、南京、成都等)的高校中舉辦MVP校園技術教育會議,如果你正好在這些城市,不防多多關注diyinside.com,注冊去參加這些免費的由微軟MVP講師主講的課程。
你必須有一個堅定的目標,然後不斷努力,而不能天天無聊沒事情做。這樣,你的生活才是充實的。
補充一點:給自己設定的目標不要太大太不容易實現。從小事開始做,一步一個腳印,更能夠增加自信心。另外,朋友圈子很重要。你應該有意識地多結交一些做實事的朋友,也許你們可以一起提高.
編程與數學的聯系
離散數學是在大學開設的,其實初中生也能看得懂,主要是因為它的描述過於嚴謹,所以看起來有點神聖。但只要明白其本質,也沒有什麼難的,不過是比較煩。
你不用專門地從頭研究數學。如果你學過一點編程,那麼建議你學習數據結構,從中你可以了解到學習哪些數學知識能幫你更好地前進;而且在學習過數據結構之後,你的編程水平將大大提高。
掌握一門語言的語法並不需要太多的數學知識。只有在遇到具體問題時,要用到數學上的相關理論,數學才發揮作用,此時完全可以通過查資料來解決。當然,有數學基礎自然可以事半功倍。不過通過應用時的臨時學習將使你對該理論有更深該的認識也形成了你的實踐積累。
最後給你一條武林秘決(今天你可能無法領悟,到你功力倍進的時候,你就會心領神會了) 程序=演算法+數據結構.
㈣ 我真的很喜歡C語言 我的夢想是成為一名優秀的程序員 誰能教教我謝謝了
先把C語言弄的很熟,再去學數據結構 隊、棧、鏈表、樹,這些自己能用C語言實現
再把C++學了,然後去看一本書 unix環境編程,這個書上的代碼一定要敲,剩下就按你的
方向走,想學桌面開發就學WIN32 及MFC,做游戲就學框架,這個看你的愛好
㈤ 程序員的夢想。。
目前來看專業對就業影響不是很大了,除非你要去做公務員...專業要求很嚴格
既然你學的計算機網路技術,而就業想做程序員,那就算專業對口。你看招聘寫得不都是要求計算機」相關專業「。
另外程序設計是一通百通的,既然你已經學了C,那麼建議你學一下C++和JAVA。
為什麼選擇這兩個?因為他們是面向對象的語言,也是當前最主流的編程語言。一門語言學精通之後你會發現再學另外一種,無非是看看語法結構以及一些語言特有的特性就好了。等你精通了一種語言,你會發現它只不過是一個工具而已,最重要的是思想,設計思路!
在大學時間比較充裕,就多努努力,等你進入社會就靜不下心來學了。
到大三大四實習的時候,最好找一份相關的工作,積累實踐經驗,這也非常重要。
再之後……畢業後的第一份工作真的很重要。如果第一份工作做了別的,也許這一生就扎進去了
以上是個人經歷的總結,我是編程愛好者,大學學的金融,工作做的是策劃~人生七零八碎!!!!
㈥ 對計算機課程的期望
現在計算機技術已深入到人類生活的各個角落,人們現在的生活都離不開電子類東西,C語言是學習計算機的基礎語言,對我們以後要學習的java,或者別的計算機語言都起到巨大的作用,我們如果掌握了學習C語言的方法,那麼學習別的語言就會節省不少時間,希望在學習C語言的過程中,我可以總結出適合自己的學習方法,多學些編程的技巧,平時可以多用些時間去編程,提高自己的編程能力,平時多看些和計算機相關的書,多了解一些知識,提高自己的能力。對於目前的教授方法,我希望老師上課可以先講本節課的知識點,然後讓我們自己先試著編程,接著老師在給出正確答案,這樣可以提高我們的動手能力,創新能力,同時,希望可以把程序的每個知識點講的全面一些。另外,我希望上課可以自由選座位,因為有的座位電腦有的時候會有問題,可以換台用,還有後排的同學可能想認真學習,但因為坐在後面無法集中注意力,如果長期坐在後面,就會失去對學習本課程的興趣研究計算機系統結構的基本概念、基本原理、基本結構和基本分析方法,使同學在具有一定的軟硬體知識基礎上能綜合認識計算機系統的軟硬體功能分配與各種不同結構類型機器的特性和性能評價方法。為研究、開發、應用高級計算機系統打下基礎。確立全面、系統的觀點和學會定量分析問題的方法。離散數學內容提要:包括集合論、數理邏輯、圖論、組合數學等內容,形式化的數學證明貫穿此課程。高級程序設計語言內容提要:分別以 C、C#或JAVA為例,介紹程序設計和語言,程序的基本數據結構、類型定義、簡單類型和結構化類型、程序的基本控制結構、結構化程序設計、面向對象的程序設計等。㈦ 關於C語言與編程的發展前景!
一、什麼是C語言:
C語言是一種計算機程序設計語言,它既具有高級語言的特點,又具有匯編語言的特點。它由美國貝爾研究所的D.M.Ritchie於1972年推出,1978年後,C語言已先後被移植到大、中、小及微型機上,它可以作為工作系統設計語言,編寫系統應用程序,也可以作為應用程序設計語言,編寫不依賴計算機硬體的應用程序。它的應用范圍廣泛,具備很強的數據處理能力,不僅僅是在軟體開發上,而且各類科研都需要用到C語言,適於編寫系統軟體,三維,二維圖形和動畫,具體應用比如單片機以及嵌入式系統開發。
二、C語言的優勢:
C語言具有其它語言所無法比擬的優勢,因而被廣泛應用,其具體優勢如下所示:
1、簡潔緊湊、靈活方便 C語言一共只有32個關鍵字,9種控制語句,程序書寫形式自由,區分大小寫。把高級語言的基本結構和語句與低級語言的實用性結合起來。C 語言可以像匯編語言一樣對位、位元組和地址進行操作,而這三者是計算機最基本的工作單元。 2、運算符豐富 C語言的運算符包含的范圍很廣泛,共有34種運算符。C語言把括弧、賦值、強制類型轉換等都作為運算符處理。從而使C語言的運算類型極其豐富,表達式類型多樣化。靈活使用各種運算符可以實現在其它高級語言中難以實現的運算。
3、數據類型豐富 C語言的數據類型有:整型、實型、字元型、數組類型、指針類型、結構體類型、共用體類型等。能用來實現各種復雜的數據結構的運算。並引入了指針概念,使程序效率更高。
4、表達方式靈活實用 C語言提供多種運算符和表達式值的方法,對問題的表達可通過多種途徑獲得,其程序設計更主動、靈活。它語法限制不太嚴格,程序設計自由度大,如對整型量與字元型數據及邏輯型數據可以通用等。
5、允許直接訪問物理地址,對硬體進行操作 由於C語言允許直接訪問物理地址,可以直接對硬體進行操作,因此它既具有高級語言的功能,又具有低級語言的許多功能,能夠像匯編語言一樣對位(bit)、位元組和地址進行操作,而這三者是計算機最基本的工作單元,可用來寫系統軟體。
6、生成目標代碼質量高,程序執行效率高 C語言描述問題比匯編語言迅速,工作量小、可讀性好,易於調試、修改和移植,而代碼質量與匯編語言相當。C語言一般只比匯編程序生成的目標代碼效率低10%~20%。
7、可移植性好 C語言在不同機器上的C編譯程序,86%的代碼是公共的,所以C語言的編譯程序便於移植。在一個環境上用C語言編寫的程序,不改動或稍加改動,就可移植到另一個完全不同的環境中運行。
8、表達力強 C語言有豐富的數據結構和運算符。包含了各種數據結構,如整型、數組類型、指針類型和聯合類型等,用來實現各種數據結構的運算。C語言的運算符有34種,范圍很寬,靈活使用各種運算符可以實現難度極大的運算。
C語言能直接訪問硬體的物理地址,能進行位(bit)操作。兼有高級語言和低級語言的許多優點。它既可用來編寫系統軟體,又可用來開發應用軟體,已成為一種通用程序設計語言。另外C語言具有強大的圖形功能,支持多種顯示器和驅動器。且計算功能、邏輯判斷功能強大。
三、C語言的應用:
1.單片機和嵌入式系統行業,這個行業是C的黃金行業,也是目前IT中的高薪行業,這個行業里高手很多,對編程和硬體設計的要求很高,C因為可以和匯編結合來控制硬體,在這個行業里廣受歡迎。
2.程序設計鄰域,這個鄰域里用的編程軟體很多,有很多的語言,C在其中的分量顯的比較薄,但仍不失為一個重要的角色。
C語言廣闊的就業前景吸引著越來越多懷揣夢想的學習加入C語言學習的浪潮,為滿足學生的學習要求,幫助學生實現夢想,3G夢工場軟體學院應運而生。3G夢工場自成立以來一直致力於致力於對3G前端應用開發工程師、iphone 軟體應用開發工程師、Android開發工程師、J2ME 開發工程師、Windows Mobile開發工程師的培養。
3G夢工場採取小班授課、項目教學、商業項目開發的教學方式,通過企業定向培養,入學簽訂就業推薦協議等人才培養模式,吸引眾多大學生就讀。課程提供內容豐富、教材形式多樣,配圖教材,多媒體動畫PPT,清晰的授課思路以及隨時可以觀摩的在線咨詢。提高授課質量,降低學生學習難度。通過優質的教育讓學生在不僅掌握C語言,還掌握其它軟體開發技能,讓學生的就業范圍更廣!
㈧ C語言學到什麼程度才算是編程高手
編程高手,對語言熟悉,且上手快。
當然語言熟悉是必須的,先學語言,再學演算法,或在練習演算法的基礎上熟悉語言,才能更深的理解編程.
真正的編程高手是對演算法很熟悉,善於解決問題,對演算法不了解和熟悉的不能說
編程高手,只能說是老手。
下面給你參考的絕對稱得上編程高手。
http://ke..com/view/1896835.htm
㈨ 一個叫做程序員的夢想
首先很欣賞你對軟體開發的熱愛和執著,很感動於你所付出的努力,也理解你現在的心情。但作為一個老編程人員,我還是要勸你幾句。
首先,軟體開發是一個苦差使。像你所說的「並不像你想的那麼簡單」。如果要做好,必須要下苦功夫,要有堅實的基礎。你現在才初中,正是打基礎的時候。數學(計算機的基礎學科)、英語(網上有價值的資料大部分都是英文的)、語文(你說相關書籍看不懂,是不是有文字理解的原因,更何況,如果你深入做下去,文字能力尤為重要)都不能荒廢,都要努力學習才行。我想你的父母也是有這個擔心,才不支持你的。如果你連初中學習的苦都吃不了,那你也無法吃軟體開發的苦。
其次,要學好編程(不提更復雜的軟體開發,它們的含義是不同的),絕不是看一兩本編程的書就能學好的,考上大學是最正規的途徑,這就需要你把現在的課程學好。雖然這樣進度比較慢,但基礎牢,後續的提升空間也比較大。就比如蓋一座大樓,編程就好比是壘磚、抹灰等最底層的工作,只有基礎牢固、知識豐富的,才可以發展為架構師、圖紙設計師等。
另外,針對你現在的學習,在保證初中學習的基礎上,當然也可以根據愛好學習一兩種編程語言。C語言是編程中最復雜的語言,真正的高手才用。難怪你看不懂了。Java雖然當前應用得比較多,但是以C為基礎,深入學習下去也比較難。如果想入門,還是VB。雖然現在用得很少了,但對理解編程思路、掌握編程技巧等還是有幫助的。
你現在覺得編程學習比較難,可以理解,畢竟你還只是上初中,知識基礎有限,自學能力還沒有掌握。等你高中畢業了,你發現會容易許多。編程或者說軟體開發,只是一項技術,同樣會需要知識基礎,不是說沒有知識基礎就能學會編程,或者學會編程就不需要初中、高中的知識積累了。恰恰相反,只有初中、高中甚至大學的知識積累,編程以及在此基礎上的軟體開發工作才能做得更好。
你對編成感興趣,這很好,希望你能以此為引導,努力學習初中、高中以及大學的知識,成為真正的編程高手、成為軟體開發的棟梁之材。
㈩ 畢業後我的理想工作(是一名程序員)作文
寫作思路:首先可以開篇點題,直接給出文章的主旨,接著表達自己的想法以及觀點,用舉例子的方式來進行闡述論證自己的看法,中心要明確等等。
「理想是指路明燈,沒有理想,就沒有堅定的方向,沒有方向,就沒有生活。」列夫.托爾斯泰曾經說過這樣一句話。所有人都有屬於自己的理想,而我的理想就是成為一名程序員。
對於這個職業,大家也許並不熟悉,其實這些人就是從事程序開發、程序維護的專業人員。說白了,大家肯定都用過手機吧,那手機里的軟體、游戲從哪兒來呢?就是出自程序員之手,就是他們成就了一個又一個軟體。
我第一次接觸編程是在四年級時,那時我偶然從電腦老師口中得知scratch這個圖形化編程軟體,它刷新了我原來對編程的理解——一串又一串的代碼,一個又一個復雜的英語單詞,那個軟體也讓我愛上編程,離我的目標——創造一個屬於自己的游戲又近了一步。
如果你問我為什麼要選擇這樣一個不廣為人知的職業,那讓我告訴你,這個職業會給人帶來快樂,所以我熱愛它,而且在一次縣里編程比賽中我獲得了一等獎,就給了我莫大的鼓勵,讓我在這條道路上勇敢的走著。
但是光有理想是不行的,還要付出努力,就像宋慶齡說的「任何成就都是刻苦勞動的結果」。我開始讓媽媽買一些與編程有關的書籍,也會看一些這方面的雜志。
一開始我還不大看得懂,只是囫圇吞棗的讀,沒有很好的理解,之後我參加了校內編程興趣小組,在老師的指導下學這本書,我豁然開朗,看書也不再是一知半解,了解到了書中全新的奧秘,讓我的編程技術有了很大的進步。
我開始做一些小游戲,但讓我最印象深刻的,還是在母親節,我為媽媽做了一張「電子賀卡」,這可是媽媽收到過的最好的禮物,後來我又參加了一個編程興趣班,學習更難的編程語言,隨著一個個問題迎刃而解,我的信心一點點增加。
蘇格拉底曾經說過,「世界上最快樂的事莫過於為理想而奮斗」。是啊,理想是一條通向成功的路,只要你堅持奮斗,就會成功的。