什么是C語言
C語言是被使用的最廣泛的一種高級語言,其歷史相當久遠。
而其發展也相當神速, 從當初的標準C發展到后來的C++。其性能也發生了很多很大的變化。
C語言擁有眾多的編譯器,其中不乏優秀者眾多。從當初的Turbo C引入集成化編譯環境后,C語言就以其靈活性,高效率,可移植性好深入人心。
后來發展起來的C++,Java 等語言,無不是在 其基礎進行擴充,使其更為靈活,更方便易用。新的C++編譯器引入了很多特色。
使得C語言語法更加靈活。摒棄了標準C對語法死板的要求。
使得編程隨心所欲。這里推薦 Borland C++ 和Visual C++。
當然這是指Dos應用,如果開發Windows應用程序,那么當 首推Visual C++。Visual C++的可視化及自動代碼生成功能相當強大。
尤其它提供的 Wizard 和Appstudio,使得開發程序簡直成為一種享受。而且由于Visual C++在各版本之間的連續性,使得開發者不必經歷換版帶來的痛苦。
從其1。5版直到最新的5。
0版兼容性保持的很好。而且在VC中也包含了控制臺應用(Dos),以及Windows Application,application wizard各種應用,所以是一個強大的開發包。
學習C語言,起初會覺得要記的東西太多,這是由于它太靈活了。 但是學到一定程度,就會嘗到甜頭了。
這種靈活性帶來的是可讀性好,語法簡單,效率高。當然C語言最大的 特色還是它的指針對指針的透徹理解將是今后開發工作中的得力助手。
因為在C++中指針無處不見,很多參數就完全是指針化的。雖然Java中摒棄了指針,那是從安全性 方面考慮。
如果從性能上來說,那是大虧了。所以指針是一個核心。
要學好C語言,無非要透徹理解書本概念,輔之以大量上機編程。要想提高應用水平, 就要多看些應用方面的書。
比如看看數據結構,然后自己想辦法來實現其中的算法。總之,編程是靠編出來的,不是靠看出來的。
在調試程序時,盡量自己解決,實在 解決不了,可以請教老師,總之,獨立思考很重要。有條件的話,在網上提問題,可受到事半功倍的效果。
堅持下去,相信不久你就會成功的喜悅了。
C語言是什么
一種編程語言C語言的發展過程 C語言是在70年代初問世的。
一九七八年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。同時由*han和*t合著了著名的“THE C PROGRAMMING LANGUAGE”一書。
通常簡稱為《K&R》,也有人稱之為《K&R》標準。但是,在《K&R》中并沒有定義一個完整的標準C語言,后來由美國國家標準學會在此基礎上制定了一個C 語言標準,于一九八三年發表。
通常稱之為ANSI C。當代最優秀的程序設計語言 早期的C語言主要是用于UNIX系統。
由于C語言的強大功能和各方面的優點逐漸為人們認識,到了八十年代,C開始進入其它操作系統,并很快在各類大、中、小和微型計算機上得到了廣泛的使用。成為當代最優秀的程序設計語言之一。
C語言的特點 C語言是一種結構化語言。它層次清晰,便于按模塊化方式組織程序,易于調試和維護。
C語言的表現能力和處理能力極強。它不僅具有豐富的運算符和數據類型,便于實現各類復雜的數據結構。
它還可以直接訪問內存的物理地址,進行位(bit)一級的操作。由于C語言實現了對硬件的編程操作,因此C語言集高級語言和低級語言的功能于一體。
既可用于系統軟件的開發,也適合于應用軟件的開發。此外,C語言還具有效率高,可移植性強等特點。
因此廣泛地移植到了各類各型計算機上,從而形成了多種版本的C語言。C語言版本 目前最流行的C語言有以下幾種: ·Microsoft C 或稱 MS C ·Borland Turbo C 或稱 Turbo C ·AT&T C 這些C語言版本不僅實現了ANSI C標準,而且在此基礎上各自作了一些擴充,使之更加方便、完美。
C語言是什么
C語言是目前世界上流行、使用最廣泛的高級程序設計語言。
C語言對操作系統和系統使用程序以及需要對硬件進行操作的場合,用C語言明顯優于其它高級語言,許多大型應用軟件都是用C語言編寫的。 C語言具有繪圖能力強,可移植性,并具備很強的數據處理能力,因此適于編寫系統軟件,三維,二維圖形和動畫它是數值計算的高級語言。
常用的編譯軟件有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,等等。
C語言的發展歷史 C語言的發展頗為有趣。它的原型ALGOL 60語言。
1963年,劍橋大學將ALGOL 60語言發展成為CPL(Combined Programming Language)語言。 1967年,劍橋大學的Matin Richards 對CPL語言進行了簡化,于是產生了BCPL語言。
1970年,美國貝爾實驗室的Ken Thompson將BCPL進行了修改,并為它起了一個有趣的名字“B語言”。意思是將CPL語言煮干,提煉出它的精華。
并且他用B語言寫了第一個UNIX操作系統。 而在1973年,B語言也給人“煮”了一下,美國貝爾實驗室的*E在B語言的基礎上最終設計出了一種新的語言,他取了BGPL的第二個字母作為這種語言的名字,這就是C語言。
為了使UNIX操作系統推廣,1977年Dennis *e 發表了不依賴于具體機器系統的C語言編譯文本《可移植的C語言編譯程序》。 1978年Brian *hian和Dennis *e出版了名著《The C Programming Language》,從而使C語言成為目前世界上流行最廣泛的高級程序設計語言。
1988年,隨著微型計算機的日益普及, 出現了許多C語言版本。由于沒有統一的標準,使得這些C語言之間出現了一些不一致的地方。
為了改變這種情況,美國國家標準研究所(ANSI)為C語言制定了一套ANSI標準, 成為現行的C語言標準 3.C語言的主要特點 。C語言發展迅速, 而且成為最受歡迎的語言之一, 主要因為它具有強大的功能。
許多著名的系統軟件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 語言編寫的。用C語言加上一些匯編語言子程序, 就更能顯示C語言的優勢了,象PC- DOS 、WORDSTAR等就是用這種方法編寫的。
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語言
一)“項目驅動”式教學 目前最著名、最有影響、應用最廣泛的windows、linux和UNIX三個操作系統都是用C語言編寫的。
0S是計算機系統(由軟硬件兩個子系統構成)的核心和靈魂,它是軟件中最龐大最復雜的系統軟件。既然如此龐大復雜的0S都可以用c語言編寫,從狹義而言,還有什么系統軟件和應用軟件不能用c語言編寫呢?由此可以肯定的說,c語言是一門十分優秀而又重要的語言。
c語言程序設計是過程性程序設計語言,它的發展貫穿了計算機發展的歷程,它蘊含了程序設計的基本思想,囊括了程序設計的基本概念,所以它是理工科高等院校的一門基礎課程。 從市面上有關c語言的書籍和高等院校采用的教材來看,它們有一個共性,那就是:脫離了實際應用(全是小打小鬧的小例子),純粹的過程性程序設計,沒有軟件工程思想的體現,沒有一定程序設計風格,僅僅是為了讓大家明白什么是c語言而已。
高等院校開設c語言程序設計的目的是讓學生對程序設計有個入門,有個直觀的理解,同時為其他后續課程作鋪墊。但是如果教學僅僅以此為目的,那么教學本身就效果而言是個大大的失敗。
大家知道,在商業上講究唯利是圖,“利”是商業追求的目標,離開了“利”經商,則商無動力,其結果是必敗無疑。在c語言程序設計教學當中,教師應該把“唯用是圖”作為教學的首要目標。
如果拋開了實際應用進行程序設計教學,就是紙上談兵,就是“說明書”式的教學。印度的程序設計課程采用“事件驅動式”教學,我認為在中國的c語言程序設計教學中應該采用“項目驅動式”教學。
“項目驅動式”教學就是以項目為目的,以c語言理論教學為過程,最終能用c語言設計項目,實現項目的要求。“項目驅動式”教學的關鍵在于培養學生“如何做什么”和“可以干什么”。
一個項目就是一個工程,在“項目驅動式”教學中,首先應該讓學生簡單了解什么是軟件工程思想,其次在c語言理論教學過程中,讓學生懂得面向對象的程序設計的風格,最后引導他們來設計項目。 (二)“項目驅動”式教學應注意的問題 1.c語言程序設計教學要幫助學生樹立面向工程的觀點 在計算機行業中,軟件是通過人們的智力活動、把知識與技術轉化成信息的一種產品。
軟件的設計已經用工程的觀念來進行管理。軟件設計工作被當作一項系統工程來對待。
軟件的的生存周期一般可分為以下階段:問題定義、可行性研究、需求分析、概要設計、詳細設計、編碼、測試、運行與維護。我們不難看出軟件工程的復雜程度是很大的。
理工科高等院校把c語言作為一門基礎課程,也是為了給社會培養信息技術人才。眾所周知,養成一個好的習慣是非常重要的,所以c語言程序設計作為大多數工科院校學生接觸的第一門程序設計語言(有的院校講pascal),就應該讓學生樹立正確的觀點。
那么當前的程序設計教學也必須以切合將來軟件工程開發的實際需要為第一目標,使學生在學習程序設計的初級階段就樹立正確的軟件工程觀點。這樣做不僅可以為學生將來從事計算機應用設計打下良好的基礎,而且有利于培養學生分析問題的完備性,以及統籌全局,協調關系的基本素質。
2.理論教學應從單一的“結構化程序設計”向“結構化與面向對象并舉”轉變 “結構化程序設計”方法是程序設計的基礎,必須讓學生掌握得堅實可靠。結構化程序設計的過程是培養學生思維能力的過程,在教學中經常發現有些學生的思維混亂。
這些都是缺乏思維訓練的結果。結構化程序設計的訓練不僅可以讓學生養成良好的程序設計習慣,而且可以有效地培養學生思維的條理性和邏輯性。
所以在授課過程中要注意講解結構化程序設計的思想時應突出兩點:(1)程序的質量首先取決于它的結構。(2)程序設計的基本方法是自頂向下地逐步求精和模塊化。
在c程序教學過程中,越到后面的章節,學生越會產生設計程序逐漸變難的感覺,這是不符合邏輯的一種怪現象。按照常理,C語言學的越多,說明你的程序設計知識越多,設計起程序來應該更加得心應手,那么出現這種現象的原因何在呢?當然該問題的出現的原因是多方面的,但是其中最重要的一點就是長期以來程序設計的觀念不是以如何處理好對象為出發點,而是以如何使用好語言為基本點。
受這種思想的影響,我們的程序設計教學大多數不是以如何解決好問題為重點,而是以講解語法規則和語句格式為重點,是“說明書”式的教學。這樣做造成的結果就是見到一個程序后學生首先想到是該用哪條語句,而不是思考怎樣合理的解析。
要切實解決這個問題,首先應該改變程序設計的觀念。“面向對象程序設計”思想是目前最為流行、極為實用的一種程序設計方法,但是讓學生直接接觸“面向對象程序設計”,肯定不能對程序設計打下牢固的基礎。
“結構化與面向對象并舉”是現代計算機程序設計的發展趨勢,應該認真探索研究,讓學生有一個較為輕松的學習過程。程序設計的實質就是編寫處理對象的過程,所以將c與c++有機的融為一體的教材應該是首選教材,在教學過程中,我們應該從社會發展的角度進行探索研究,將目前最為流行又極為實用“面向對象程序設計”。