摘要:學習C語言的預備知識的目的應該從讓學習者充分從c語言感興趣的角度出發(fā),第一時間理解C語言的特點、程序的運行原理等基礎知識,為后續(xù)學習打下堅實的基礎。
關鍵詞:C 語言;預備知識;編譯知識
中圖分類號:TP312.1-4 文獻標識碼:A 文章編號:1672-9129(2018)07-0047-02
Abstract: the purpose of learning the preparatory knowledge of the C language should be from the point of view that the learners are fully interested in the C language. The basic knowledge of the characteristics of the C language and the operating principle of the program should be understood at the first time for the follow-up study.
Learn to lay a solid foundation.
Keywords: C language; preparatory knowledge; compiling knowledge.
《C語言程序設計》是大學計算機專業(yè)的必修課,以C語言為主導培養(yǎng)提高學生的程序設計能力,對于促進后續(xù)課程(如數(shù)據(jù)結構、算法設計)的教學具有重要作用【1】。與此同時,無論是課堂聽課還是以自主學習的方式,都可以將這門重要的課程學好,但是大多數(shù)人在學習這門課程之前并沒有接觸過太多計算機專業(yè)的相關知識,加上一些內(nèi)容相對難以理解,造成大量C語言學習者沒有將這門課熟練掌握。受限于課時、教學大綱等原因,很少有人充分重視學習《C語言程序設計》的預備知識學習,筆者作為一名計算機從業(yè)人員,充分理解C語言的重要性,也深知C語言學習的難點。本文將從以下兩個方面闡述《C語言程序設計》的預備知識,希望無論是在校大學生還是計算機愛好者,都可以在正式學習《C語言程序設計》這門課程之前了解一些C語言的特點、程序的運行原理等最基本的編譯知識,為C語言學習者提供幫助。
任何一門課程的第一節(jié)課往往都非常重要,第一節(jié)課學得好,可以使學習者對這門課程產(chǎn)生濃厚的興趣,為后續(xù)的學習做好鋪墊。大多數(shù)院校教師或者自學這門課程的人會選擇譚浩強教授所編著的《C語言程序設計》作為教材,國內(nèi)的大專院校往往在授課時也按照書上的大綱講述,同時列舉一些C程序代碼,但是對于一部分學習者來講,大學的第一課就接觸代碼往往會很讓學習者覺得非常接受,與此同時沒有理解C語言的特點、應用領域、重要性和最基本編譯知識的缺乏,將勢必影響學習者的學習興趣。因此在正式學習《C語言程序設計》的之前,先學習一寫C語言的預備知識,筆者從以下兩個方面來介紹C語言相關的預備知識。
1 明確C語言的特點、應用領域和重要性
1.1 C語言的特點
在正式學習C語言之前,可以先了解C語言的特點。首先,要知道C語言的優(yōu)點:相比于其它高級語言接近計算機底層、速度快、功能強大;其次,對C語言的缺點也一定要明確了解:危險性高、開發(fā)周期長。同時,一定要懂得,在當今的軟件開發(fā)環(huán)境下,單純的學習C語言是很難做出實際項目的,需要繼續(xù)學習后續(xù)的課程如數(shù)據(jù)結構、數(shù)據(jù)庫等。但是如果熟練掌握C語言,對后續(xù)課程的學習往往會達到事半功倍的效果。
1.2 C語言的應用領域
目前國內(nèi)大多數(shù)C語言教材都是泛泛的談C語言的應用領域,這樣不利于學習者對這門課程產(chǎn)生興趣,在此,筆者通過一些實例對C語言的應用領域做出介紹:
系統(tǒng)軟件開發(fā):
操作系統(tǒng): Windows操作系統(tǒng)、Linux操作系統(tǒng)、Unix操作系統(tǒng)
驅(qū)動程序:主板驅(qū)動、顯卡驅(qū)動、攝像頭驅(qū)動
數(shù)據(jù)庫: Sql Sever、Oracle
應用軟件開發(fā):辦公軟件:WPS
圖形圖像多媒體軟件:Photoshop、Media Player
嵌入式開發(fā)軟件:智能手機、平板電腦
游戲開發(fā):2D、3D游戲
通過這些實例,可以讓學習者第一時間了解C語言的應用領域,明確C語言學習的重要性。
1.3 C語言的重要性
對于C語言的重要性,筆者將它總結出幾條:
① 計算機誕生有史以來最重要的語言。
② 所有計算機相關專業(yè)、電子信息類相關專業(yè)的必修課程。
③ 一名合格計算機從業(yè)人員必須掌握的語言。
④ 希望從事計算機以及相關專業(yè)研究人員必須精通的一門課程。
⑤ 最重要的系統(tǒng)開發(fā)軟件。
⑥ 大企業(yè)、外企招聘程序員必考的語言。
⑦ 為學習數(shù)據(jù)結構、操作系統(tǒng)、計算機系統(tǒng)結構等計算機專業(yè)課程以及其它編程語言(如C++、Java等)奠定基礎。
2 了解C語言編程預備知識
首先,由于很多初學者往往對編程軟件、CPU、內(nèi)存、硬盤、主板、顯示器之間關系并不熟悉,所以可以通過查閱資料的方式對其進行了解,最重要的一點是明白CPU不能直接處理硬盤上的數(shù)據(jù),必須要先調(diào)入內(nèi)存然后進行處理。這里可以以“Hello word”程序為例,學習者除了將該程序的代碼敲在編程軟件上并且了解C語言程序的格式和框架外,一定還要理解這個程序是如何運行起來的,這樣不但可以了解計算機運行的基本原理,而且為后續(xù)學習《計算機組成原理》和《操作系統(tǒng)》等課程做好準備。
其次,學習者應該對數(shù)據(jù)類型、常量和變量進行了解.學習數(shù)據(jù)類型時重點理解基本數(shù)據(jù)類型,在這里建議參照數(shù)學的中數(shù)字的規(guī)律來理解整形、浮點型和字符。在理解常量和變量時一定要知道常量在C語言中是如何表示的,變量的本質(zhì)是內(nèi)存中一段存儲空間、如何定義變量和必須初始(即賦值)。
最后,了解進制及進制之間的轉化。進制轉化是計算機中最基本的知識,因為計算機只能識別“0”和“1”,所以熟悉二進制、八進制、十進制和十六進制的轉換是非常重要的。同時,要理解原碼、反碼、補碼和移碼的計算和用法,方便日后的學習。
3 總結
根據(jù)筆者多年來對C語言研究和學習,本文提出的《C語言程序設計》預備知識有利于激發(fā)學習者的學習興趣,提高自主學習的能力。
另外,在前期學習中一定要多看、多敲代碼,并且保證代碼的規(guī)范化,這樣對后續(xù)課程的學習將會起到很大的幫助。
參考文獻:
[1]楊柳,鐘誠.C 語言教學新思路[J].大眾科技.2014.5.
簡介:高原 廣西大學計算機與電子信息學院工程碩士,研究方向:計算機技術。