A. c語言要不要學
這個問題有點廣泛。關於c語言要不要學的問題,首先要看你學c語言的目的是什麼:如果是大學課程的話,c語言作為一個編程入門課程,也是極好的,因為c語言更加偏向底層,不但把程序中的變數,函數,流程式控制製做了詳細的講解,而且c語言更加面向底層。在學習語言的過程找那個,對於底層也會有一個更好了解。
c語言應用范圍廣泛,具備很強的數據處理能力,不僅僅是在軟體開發,而且各類科研都需要用到C語言,適於編寫系統軟體,三維,二維圖形和動畫。具體應用比如單片機以及嵌入式系統開發。
如果希望將來做 伺服器端的開發的話,c語言目前還是 首選之一。因為c語言的高性能,目前廣泛的用於服務端程序邏輯的開發和和使用。
要不要學習c語言的問題上,如果想做相關方面的開發,或者想了解下程序開發,c語言還是值得學習的。
B. 學C語言有什麼用
C語言可以編任何程序,windows大部分都是用c語言寫的。學C語言基礎可以為以後學習其他語言打好基礎。
C語言的主要用途是用來編寫應用軟體和系統軟體,同時還非常適合於教學。
C語言與其他語言的異同:
C語言是處於匯編語言和高級語言之間的一種記述性程序語言,C語言比較靠近硬體和系統,它既有面向硬體和系統,像匯編語言那樣可以直接訪問硬體的功能,又有高級語言面向用戶,容易記憶,便於閱讀和書寫的優點。
C語言被稱為高級匯編語言,底層硬體編程,生成代碼率比其它高級語言要高,
很多黑客網站都寫著黑客必備語言.
Linux是由C寫的,據說微軟的操作系統是用C和匯編寫的
很多汽車的智能控制系統是由C寫的
c語言是用於計算機編程的高級語言,但是其效率很高,而且接近人類自然語言,所以受到編程人員的青睞。c語言還有一個特點就是接近計算機硬體,所以很多操作系統實際上就是用c語言編寫的。學好c語言不但對於計算機編程很大好處,而且也是很多高級語言的基礎,即使不是計算機專業的人,學習c語言也又很大用處。現在大部分工程技術問題的解決都需要計算機來完成,而這裡面的計算主要靠編程實現,而c語言的高效率是除了匯編語言之外的其他語言所不能比的,而匯編語言又不易掌握,所以學習c語言就成為必然。
C. 為什麼要學習C語言
為什麼C語言依然如此流行?由於種種原因,業界選擇了C,其中最主要的原因就在於它的效率。優秀C程序的效率幾乎和匯編語言程序一樣高,但C程序明顯比匯編語言程序更易於開發。和許多其他語言相比,C給予程序員更多的控制權,如控制數據的存儲位置和初始化過程等。C缺乏「安全網」特性,這雖有助於提高它的效率,但也增加了出錯的可能性。如,C對數組下標引用和指針訪問並不進行有效性檢查,這可以節省時間,但在使用這些特性時就必須特別小心。如果你在使用C語言時能夠嚴格遵守相關規定,就可以避免這些潛在的問題。
C提供了豐富的操作符集合,它們可以讓程序員有效地執行一些底層的計算如移位和屏蔽等,而不必求助匯編語言。C的這個特點使很多人把C稱為「高層」的匯編語言。但是,當需要的時候,C程序可以很方便地提供匯編語言的介面。這些特性使C成為實現操作系統和嵌入性控制器軟體的良好選擇。C流行的另一個原因是由於它的普遍存在。C 編譯器在許多機器上實現。另外,ANSI標准提高了C程序在不同機器之間的可移植性。
最後,C是C++的基礎。C++提供了一種和C不同的程序設計和實現的觀點。然而,如果你對C的知識和技巧,如指針和標准庫等成竹在胸,將非常有助於你成為一名優秀的C++程序員。
D. 學好C語言有什麼好處
一、我們要正確認識c語言,到底值得學嗎?答案是肯定的。一方面是c語言在全世界的普及率非常高,去德國留學的一個朋友說,c語言是德國大學的必修課,而且十分重視。我的一個學生***到北京實習回來,最大的感受就是大學三年學的最重要的課程就是c語言了。更重要的是,目前c語言的應用也是十分廣泛的,單片機,操作系統,游戲等很多的計算機領域都涉及到c語言,而c語言的影響也非常大,甚至有些軟體公司,把c掌握的程度作為應聘的一個重要標准。還有,現在的考試,二級,三級,四級,程序員考試等很多的考試都涉及到c語言的內容,有的占的比例很大。無論從哪個角度看,你都應該學它。
二、既學之,則好之。這是我的座右銘「既做之,則好之」的同胞兄弟,記住它,可能給你帶來動力。建議閱讀《C語言程序設計》這本書或者到論壇下載,地址:http://www.vcok.net/best/vcok_1.chm,這個電子教程也可,尤其是初學者必須有一本教程,而後就該懂得如何學習它,既然是一門語言,他就漢語,英語一樣,都有自己的語法規則,這部分學習起來並不難,但是要牢記,就象說英語要懂語法一樣。懂得了語法不見得就能編出程序來,更為重要的是掌握編程的思想,如何用簡捷的方法解決一個問題。同樣做一個循環問題,可能有人要做300次循環,而有的人要做100次,這就是差距,如果你編的windows xp比別人編的win98慢3倍,誰還用你的操作系統呀!C語言只是一個基礎。我們還善於利用這些基本的東西去構造出一些新的東西,建議大家學完c語言後,繼續學習《數據結構》,這樣你會感覺c語言果真還有很多的東西要學。平時,我們學習的時候要注意掌握每個概念,當然理論的學習是離不開實踐的,尤其是c語言,需要你編寫大量的程序,最初可以學著別人的程序打,慢慢就應該獨立出來,把自己的想法用c語言描述出來,這是一件十分快樂的事情。建議初學者不要看高級編程,先勤寫代碼、多看代碼、培養風格、熟悉語法、最關鍵的還是把握思想。當你能夠信手拈來的時候,你的c語言才可以說學會了。一定要養成自己獨立寫完一個程序的能力,這樣可以有一種成就感。不斷培養這種成就感,循序漸進,進步是自然的事情。
三、學習它是個長期的過程,要不斷的總結經驗,我們學習就怕不能持之以恆。關於這點大家比我更清楚。一旦你學會了它,其他的語言就可以觸類旁通了,例如:C++,C#,JAVA,VB,DELPHI......這些學起來就會比那些C語言基礎不扎實的人要輕松得許多!
E. 學習C語言有什麼用處
C是基礎的語言
C語言被廣泛用於操作系統和編譯器的開發
功能非常強
雖然現在不是最流行但是
最基礎的東西是也比較好學的語言
如:金山的創始人江明
從30多歲開始學語言
學的就是C
對C的評價相當高
C語言是一種計算機程序設計語言。它既有高級語言的特點,又具有匯編語言的特點。它可以作為系統設計語言,編寫工作系統應用程序,也可以作為應用程序設計語言,編寫不依賴計算機硬體的應用程序。因此,它的應用范圍廣泛。
C語言對操作系統和系統使用程序以及需要對硬體進行操作的場合,用C語言明顯優於其它解釋型高級語言,有一些大型應用軟體也是用C語言編寫的。
C語言具有繪圖能力強,可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫。它是數值計算的高級語言。
常用的C語言IDE(集成開發環境)有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++,Lccwin32 C Compiler 3.1,Microsoft C,High C,TurboC等等......
C語言的優點
1.簡潔緊湊、靈活方便
C語言一共只有32個關鍵字,9種控制語句,程序書寫自由,主要用小寫字母表示。它把高級語言的基本結構和語句與低級語言的實用性結合起來。C語言可以象匯編語言一樣對位、位元組和地址進行操作,而這三者是計算機最基本的工作單元。
2.運算符豐富
C的運算符包含的范圍很廣泛,共有34種運算符。C語言把括弧、賦值、強制類型轉換等都作為運算符處理。從而使C的運算類型極其豐富,表達式類型多樣化,靈活使用各種運算符可以實現在其它高級語言中難以實現的運算。
3.數據結構豐富
C的數據類型有:整型、實型、字元型、數組類型、指針類型、結構體類型、共用體類型等,能用來實現各種復雜的數據類型的運算,並引入了指針概念,使程序效率更高。另外C語言具有強大的圖形功能,支持多種顯示器和驅動器,且計算功能、邏輯判斷功能強大。
4. C是結構式語言
結構式語言的顯著特點是代碼及數據的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結構化方式可使程序層次清晰,便於使用、維護以及調試。C語言是以函數形式提供給用戶的,這些函數可方便的調用,並具有多種循環、條件語句控製程序流向,從而使程序完全結構化。
5. C語法限制不太嚴格,程序設計自由度大
雖然C語言也是強類型語言,但它的語法比較靈活,允許程序編寫者有較大的自由度。
6. C語言允許直接訪問物理地址,可以直接對硬體進行操作
因此既具有高級語言的功能,又具有低級語言的許多功能,能夠像匯編語言一樣對位、位元組和地址進行操作,而這三者是計算機最基本的工作單元,可以用來寫系統軟體。
7. C語言程序生成代碼質量高,程序執行效率高
一般只比匯編程序生成的目標代碼效率低10へ20%。
8. C語言適用范圍大,可移植性好
C語言有一個突出的優點就是適合於多種操作系統,如DOS、UNIX,也適用於多種機型。
C語言的缺點
1.C語言的缺點主要是表現在數據的封裝性上,這一點使得C在數據的安全性上做的有很大缺陷,這也是C和C++的一大區別。
2. C語言的語法限制不太嚴格,對變數的類型約束不嚴格,影響程序的安全性,對數組下標越界不作檢查等。從應用的角度,C語言比其他高級語言較難掌握。
C語言指針
指針就是C語言的一大特色,可以說C語言優於其它高級語言的一個重要原因就是因為它有指針操作可以直接進行靠近硬體的操作,但是C的指針操作也給它帶來了很多不安全的因素。C++在這方面做了很好的改進,在保留了指針操作的同時又增強了安全性。Java取消了指針操作,提高了安全性。
C源程序的結構特點
1.一個C語言源程序可以由一個或多個源文件組成。
2.每個源文件可由一個或多個函數組成。
3.一個源程序不論由多少個文件組成,都有一個且只能有一個main函數,即主函數。
4.源程序中可以有預處理命令(include命令僅為其中的一種),預處理命令通常應放在源文件或源程序的最前面。
5.每一個說明,每一個語句都必須以分號結尾。但預處理命令,函數頭和花括弧「}」之後不能加分號。
6.標識符,關鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。
學習C語言
在初學C語言時,可能會遇到有些問題理解不透,或者表達方式與以往數學學習中不同(如運算符等),這就要求不氣餒,不明白的地方多問多想,鼓足勇氣進行學習,待學完後面的章節知識,前面的問題也就迎刃而解了,這一方面我感覺是我們同學最欠缺,大多學不好的就是因為一開始遇到困難就放棄,曾經和好多同學談他的問題,回答是聽不懂、不想聽、放棄這樣三個過程,我反問,這節課你聽過課嗎?回答又是沒有,根本就沒聽過課,怎麼說自己聽不懂呢?相應的根本就沒學習,又談何學的好?
學習C語言始終要記住「曙光在前頭」和「千金難買回頭看」,「千金難買回頭看」是學習知識的重要方法,就是說,學習後面的知識,不要忘了回頭弄清遺留下的問題和加深理解前面的知識,這是我們學生最不易做到的,然而卻又是最重要的。學習C語言就是要經過幾個反復,才能前後貫穿,積累應該掌握的C知識。
那麼,我們如何學好《C程序設計》呢?
一.學好C語言的運算符和運算順序
這是學好《C程序設計》的基礎,C語言的運算非常靈活,功能十分豐富,運算種類遠多於其它程序設計語言。在表達式方面較其它程序語言更為簡潔,如自加、自減、逗號運算和三目運算使表達式更為簡單,但初學者往往會覺的這種表達式難讀,關鍵原因就是對運算符和運算順序理解不透不全。當多種不同運算組成一個運算表達式,即一個運算式中出現多種運算符時,運算的優先順序和結合規則顯得十分重要。在學習中,只要我們對此合理進行分類,找出它們與我們在數學中所學到運算之間的不同點之後,記住這些運算也就不困難了,有些運算符在理解後更會牢記心中,將來用起來得心應手,而有些可暫時放棄不記,等用到時再記不遲。
先要明確運算符按優先順序不同分類,《C程序設計》運算符可分為15種優先順序,從高到低,優先順序為1 ~ 15,除第2、3級和第14級為從右至左結合外,其它都是從左至右結合,它決定同級運算符的運算順序.
二.學好C語言的四種程序結構
(1)順序結構
順序結構的程序設計是最簡單的,只要按照解決問題的順序寫出相應的語句就行,它的執行順序是自上而下,依次執行。
例如;a = 3,b = 5,現交換a,b的值,這個問題就好像交換兩個杯子水,這當然要用到第三個杯子,假如第三個杯子是c,那麼正確的程序為:c = a;a = b;b = c;執行結果是a = 5,b = c = 3如果改變其順序,寫成:a = b;c = a;b = c;則執行結果就變成a = b = c = 5,不能達到預期的目的,初學者最容易犯這種錯誤。順序結構可以獨立使用構成一個簡單的完整程序,常見的輸入、計算、輸出三步曲的程序就是順序結構,例如計算圓的面積,其程序的語句順序就是輸入圓的半徑r,計算s = 3.14159*r*r,輸出圓的面積s。不過大多數情況下順序結構都是作為程序的一部分,與其它結構一起構成一個復雜的程序,例如分支結構中的復合語句、循環結構中的循環體等。
(2)分支結構
順序結構的程序雖然能解決計算、輸出等問題,但不能做判斷再選擇。對於要先做判斷再選擇的問題就要使用分支結構。分支結構的執行是依據一定的條件選擇執行路徑,而不是嚴格按照語句出現的物理順序。分支結構的程序設計方法的關鍵在於構造合適的分支條件和分析程序流程,根據不同的程序流程選擇適當的分支語句。分支結構適合於帶有邏輯或關系比較等條件判斷的計算,設計這類程序時往往都要先繪制其程序流程圖,然後根據程序流程寫出源程序,這樣做把程序設計分析與語言分開,使得問題簡單化,易於理解。程序流程圖是根據解題分析所繪制的程序執行流程圖。
F. 學習C語言有什麼用
談及C語言,我想凡是學過它的朋友都有這樣一種感覺,那就是「讓我歡喜讓我憂。」歡喜的是,C語言功能非常強大、應用廣泛,一旦掌握了後,再自學其他語言就顯得輕而易舉了。憂慮的是,C語言猶如「少林武功」一般博大精深,太難學了。其實就筆者認為C語言並非是「difficult(困難)」的,只要你能理清思路,掌握它的精髓,那麼自學C語言是一件非常容易且又其樂無窮的事。今天本人就與大家一起談談如何學習C語言或者說學習C語言應從哪幾方面著手。
一、明確學習目的:
◆ C語言功能強大,本書涉及知識結構全面、合理。是一門非常好的編程語言基礎語言。
◆ C是一門學習邏輯、程序演算法、演算法實現很好的教程。通過第一學期C語言的學習,從而可以了解程序的設計編碼的過程。
◆ C是一單進程、單線程執行,從頭到尾執行,學習難不小。但結構嚴謹的高級語言,可以很好學習編程規范和要求。
◆ C語言是為以後學習其它語言打下基礎的語言。
二、好的學習方法:
基於上述學習目的並且也我們第一門編程語言。學習方法是:
◆ 課前預習,課後復習,認真做課堂、課後的作業,理解理論知識。
◆ 記住語法規則。
◆ 加強邏輯思維。
◆ 多動手,通過練習上機了解它的運行過程。
◆ 實踐—>理論—>再實踐,剛開始學習C語言時,按示例練習,並推動理論的學習,然後再自己多思考,多上機實踐。
常見問題:
1、有同學聽說C語言很難,剛學習到第二、三章時,於是說:老師,我不會呀!真的很難。我不知道如何學習?
分析:
1)心理作用,在沒有學習之前都認為很難了。學不會也正常。
2)前三章是基礎,對於沒有學習過編程語言的同學來說,新的專業名詞很多。
3)前三章是基礎,還不能完整的寫出一個C程序。於是,就不知道如何去用,在哪個時候用等很多的疑問。
問題的存在:過於著急,對新的事務領悟不夠。
解決方法:學習是循序漸進和積累的過程,不要著急。這此知識都是為以後作鋪墊的。
2、有同學學到數組時,說:聽你上課時,我懂,但要我自己寫,我不知道如何寫?不知道如何開始?
分析:
1)邏輯性思想太亂。如果問:「如果班上有30個同學,要判斷成績是否及格,你將如何做?」;「當然先知道每個同學的成績,然後一個一個和60比較,如果大於等60,則及格,否則不及格。」;「那麼C語言來實現,如何做?」。聲明30個變數存儲成績?不是一個好辦法。如果聲明一個30元素的數組,是不是更合理。另外,如果要寫30個條件語句來判斷,也太過於繁鎖。如果用for循環是不是更加合理。
2)練習太少,有解決方法,但不能用C語言實現。
問題的存在:思路不清淅,練習太少。
解決方法:多上機練習,多思考,舉一反三。了解程序的運行過程和編碼。
三、學習要點和重點:
◆ 第一章至第四章的:基礎知識和理論知識必須要求能理解、領悟。也是學習其它語言的基礎。
◆ 第二章、第三章提到很多的專業名詞,如數據類型,變數與常量的區別,標識符的命名規則,表達式及各種運算符及輸入輸出函數基礎
◆ 五章和第六章:程序的基本結構,學習完前六章,要求能理解程序運行和編碼的過程。
◆ 將我們的演算法用編程語言來實現,主要是學習程序設計的邏輯性。也是學習其它語言的基礎
◆ 第七章到第十一章:學習C語言的特色,更深入了解C語言。本章讓學員加強空間的想像力。
◆ 第十二章:是文件的操作。考慮的是如何將程序的輸出結果及相關信息用文件記錄下來。
四、學習難度:
◆ 與日常的自然語言的表達不完全相同,所有結果要通過計算才能得。計算機沒有想像能力和空間思維能力。計算機能運行,依靠程序員的嚴謹的命令來驅動。
◆ 語法格式多,知識點全面。應用時,要將零散的知識點有效有序的組合。
很多問題的解決方法是需要經驗的。
祝你成功··!
●▂● 回答採納率:36.4% 2008-09-01 11:24 檢舉
G. 學C語言的好處是什麼
C語言實際上已經成為了中級語言的事實上的標准,如果你從事嵌入式開發、晶元設計等,C語言是必須懂的基礎;在高級語言上,C語言的簡練和精確也具備特殊的優勢;VC的強大在Windows平台上其它語言更是難與之相匹敵,在Unix/Linux平台上,C語言也是最終要的語言,Linux的內核也主要是以C語言寫的。
當然C語言也有缺點:就是難,容易出錯,因為它的數據類型需要精確,而導致不夠深入理解的程序員常容易犯錯。
一句話:專業的編程,一定要學C語言;業余水平的,可以直接從VB等入手。
H. 為什麼要學C語言
C即C語言,可以從很多個角度來回答:
1.C是面向過程的語言.他的執行都是由上而下的瀑布式的.而現在流行的面向對象(例如JAVA.C++)的執行順序並
不是寫程序的人可以控制的.它是由某些動作來調用的
2.C是中級語言.一般我們認為匯編叫做低級語言.因為它直接提供了對硬體的操作.功能十分強大.效率也十分
的高.但是想完全使用匯編來寫一個應用幾乎是完全不可能的事情.並且匯編語言需要硬體的支持.也就是說
你針對自己的機器寫的匯編到別人的機器上未必就能跑的起來.而高級語言指的就是是用類似人類語言的語
言來表達的。比如JAVA.BASIC.PASCL等.這些語言與硬體之間的關系不大.通用性很強.開發應用程序效率比較
起低級語言來說要高很多。因為C提供了一種叫做指針的東西.可以直接操作系統的內存地址.這個功能是其
他高級語言所沒有的.所以人們習慣把C叫做中級語言.意思就是說既有高級語言類似人類語言的特點.又有匯
編的可以直接操作硬體的功能.