田 馳
(鐵嶺師范高等??茖W校 理學院,遼寧 鐵嶺 112000)
C語言編程技巧在C語言學習中的應用研究
田 馳
(鐵嶺師范高等專科學校 理學院,遼寧 鐵嶺 112000)
C語言擁有著非常強大的功能以及諸多的語言優(yōu)勢,因此得到了各大高校的普遍重視,使其成為眾多理工科專業(yè)中的一門必修或選修的課程。但是C語言由于存在的內(nèi)容復雜與繁瑣,學習過程非??菰锓ξ?,致使初學的學生有著極大的學習困難,因此對編程技巧加以一定的掌握,對于學習C語言將有極大的好處。文章將從幾個方面對編程技巧展開分析。
C語言;編程技巧;C語言學習;應用研究
C語言作為現(xiàn)代計算機重要的標稱語言之一,其不但擁有著高級編程語言以及低級編程語言所具有的諸多特點,而且能夠?qū)⑵溥\用在當前時期的計算機系統(tǒng)以及應用的編寫以及修正之中,并且能夠利用C語言實現(xiàn)對現(xiàn)代化的計算機軟件編寫,這也就說明了C語言對于當前時期眾多的編程語言而言,其有著非常廣泛的應用前景,但是在這一語言學習過程中卻存在極大的困難,為初學者帶來了顯著的學習困難,利用一定的技巧能夠顯著提升學習效果,希望通過本文的簡單介紹能夠提供一定的幫助。
當前時期,C語言已經(jīng)成為全球范圍中的計算機軟件開發(fā)以及編寫領域中的運用最為普遍的一種編程語言,其傳播速度以及發(fā)展速度均是極為迅速的[1]。C語言開發(fā)于20世紀60年代,其在20世紀70年代不斷發(fā)展完善,經(jīng)過50多年的發(fā)展,目前C語言已經(jīng)發(fā)展得較為成熟,當前C語言擁有著以下一些基本特征。第一,C語言自身擁有著極為普遍的應用范圍,具有非常顯著的可移植性,可以在眾多形態(tài)操作系統(tǒng)實現(xiàn)良好的適用。第二,C語言從外在形制方面來說,其擁有著十分明顯的簡潔和緊湊等性能,在進行實際使用過程中,擁有著顯著的靈活性和方便性。由于其自身語法欠缺一定的嚴格性,為編程人員在進行程序編寫過程中打下了較為自由的基礎條件,能夠?qū)⒏呒壘幊陶Z言與地基編程語言進行很好地銜接。第三,C語言擁有著非常多的數(shù)據(jù)結(jié)構(gòu)。第四,C語言對于進行語句表意方面,其擁有著多種多樣而且數(shù)量眾多運算符號,利用這些運算符號能夠完成其他高級語言不能很好實現(xiàn)的功能。第五,C語言擁有著典型與鮮明的應用和建設特點,可以使數(shù)據(jù)對象和編程代碼間可以進行有效的分割,在軟件編寫過程中能夠擁有著非常顯著的清晰性,給技術(shù)員進行使用、調(diào)試以及維護等工作帶來極大的便利性[2]。第六,C語言可以對物理地址進行最為直接的訪問。第七,運用諸多的數(shù)據(jù)結(jié)構(gòu)能夠讓C語言在實現(xiàn)數(shù)據(jù)運算的前提下,還擁有著較為顯著的圖形元素處理以及引入方面的功能。
C語言因其具有強大以及豐富的使用功能,使其得到了現(xiàn)代人們普遍的關(guān)注以及普遍的使用,這便要對C語言使用技巧和基礎知識加以有效地掌握與學習。然而,事實上存在諸多的因素造成大量的C語言初學者常常在學習過程中感覺枯燥。雖然位過一定時間的學習以及實踐,但是無法對C語言的基礎知識以及操作能力有顯著的提升,而且對于C語言整體認知也存在較大的缺陷[3]。這一學習問題主要可以從如下幾點原因進行分析。
一方面,C語言對于目前大多數(shù)編程語言而言,其處于高級語言范疇之內(nèi),C語言和以往的面向?qū)ο笮偷木幊陶Z言有著較為顯著的差異,這就造成C語言在進行學習過程中無法對編寫的語言進行直觀查看,并且只能在編寫完成并進行調(diào)試過程中才能對所編寫的程序進行真實的感知,此外,在進行實際編寫時,一旦某一流程存在些許偏差均會造成程序輸出存在錯誤。另一方面,由于C語言具有的表意元素體系內(nèi)存在有大量的算法和數(shù)據(jù)結(jié)構(gòu),這便對學習者進行基礎知識和應用技巧方面的學習與理解時帶來了顯著的制約,致使部分學生在學習過程中感到枯燥乏味,最終出現(xiàn)厭煩心理,而且在學習時也會不斷失去學習C語言的意愿,不能確保學生學習效果得到顯著的提升。
即便C語言擁有著眾多的技術(shù)優(yōu)勢,但是在實際學習過程中依舊存在較大的難度,采取一定的編程經(jīng)驗以及技巧,不但能夠有效地提升編程效率,而且可以在很大程度上對C語言學習有著幫助。
3.1 指針
C語言所具有的特征通常是利用指針表達來實現(xiàn),指針具有更為簡單的語句,而且能夠有效地提高C語言的運行時的速度,但是也存在占用內(nèi)存相對較大的不足。諸如對于字符串進行賦值方面,其中一種代碼為:#defune LEN 32;char string 1[LEN];memset (string,0,1LEN);ctrcpy(string1,”this is a example”);另一種方式的代碼為:const char string2 [LEEN]=“this is a example”;char*cp;cp=string2。從上述兩個代碼來看,他們的運行效率是無法相比的,前者一定要對兩個字符函數(shù)進行調(diào)用才能實現(xiàn),而后者對指針進行運用便可實現(xiàn)。但是后者靈活性不如前者好,一旦字符串出現(xiàn)大量變更時,前者所具有的靈活性便會展現(xiàn)出來,后者將會對內(nèi)存中的字符串加以大量占用。
3.2 數(shù)學方法
數(shù)學計算對于計算機而言是不可或缺的,學習C語言過程中,一定會遇到處理大量數(shù)據(jù)形式的結(jié)構(gòu),編程的目的便在于解決這一問題,利用計算機來對人工的繁重運算進行有效的代替,從而有效地節(jié)省人工。對于一些相對較為簡單的運算能夠利用數(shù)學方式加以解決,所以在利用C語言進行編程之前,應該將數(shù)學思維運用在其中,能夠有效地提高工作效率,對工作人員思維有著顯著的擴展作用。
3.3 使用位操作
位操作能夠顯著的提升C語言編程的效率,這是由于位操作使全部計算機程序內(nèi)最為基礎的數(shù)據(jù)單元,擁有著非常重要的作用,可以使代碼顯得相對簡潔,從而使效率得到極大的提升,全部的運算操作基本上都可以根據(jù)位運算來進行處理,但是位操作也存在一定的安全隱患,因此這一技巧在實際使用過程中要根據(jù)其實際狀況進行充分的考量。
單片機已經(jīng)是產(chǎn)品開發(fā)今后的必然發(fā)展趨勢,單片機計算機操作愈發(fā)復雜與繁重,使其性能也得到了很大的提升,其內(nèi)部存儲器也在逐漸擴大,在代碼量以及運行速度上均是匯編語言,并不存在顯著的差異,因此利用單片機實現(xiàn)編程也是一項重要的研究內(nèi)容[4]。C語言雖然擁有著眾多的優(yōu)勢,但是其所生成出來的代碼相對較長,除非擁有著較好的編程基礎,要不然的話其效果相對較差,對此簡單介紹一些有關(guān)單片機進行編程方面的技巧。
4.1 選擇數(shù)據(jù)類型
基于單片機形式的C語言編程要與程序存儲器進行有效的結(jié)合,可以提供大量的數(shù)據(jù)類型,能夠被計算機進行直接讀取的語言只要有bit和char,其所產(chǎn)生的代碼相對較短。而浮點型與整形等形式的數(shù)據(jù)無法被計算機進行直接讀取,要利用相關(guān)程序以及函數(shù)等才能實現(xiàn),而且所產(chǎn)生的代碼相對較長。要想降低代碼長度,在對數(shù)據(jù)類型進行選取時要與實際情況相結(jié)合。
4.2 算法優(yōu)化
明確所選取的數(shù)據(jù)庫類型之后,便要對程度算法實現(xiàn)一定的優(yōu)化,主要是針對程序運行速度以及程序代碼量。此二者一般是相互獨立,擁有著此消彼長的聯(lián)系,如果空間復雜度得到了優(yōu)化,便會使時間復雜度得到一定的增加,所以,對算法進行優(yōu)化時,要根據(jù)具體情況取二者的平均值。代碼效率一般是指代碼從發(fā)出至返回所需的時間,對時間復雜度進行優(yōu)化的話,主要是通過代碼執(zhí)行時間來實現(xiàn),對于執(zhí)行時間方面的計算,可以利用計時器來實現(xiàn),令單片機所自帶的計時器方式調(diào)整成為自動重載形式之后,調(diào)用代碼過程中,要將計時器進行開啟,在程序執(zhí)行完成之后,對計時器進行及時停止,通過對時間進行計算,基于此對其進行適當?shù)膬?yōu)化。
總而言之,C語言由于具有諸多的技術(shù)優(yōu)勢以及強大的功能,使其在諸多的領域之中得到了非常普遍的運用,對于我國諸多高校而言,特別是理工科,對C語言進行了大力的推動。由于C語言是一種面向過程形式的編程語言,其中的關(guān)鍵部分使算法和數(shù)據(jù)節(jié),這也是學習過程中的重難點內(nèi)容,為了解決初學學生學習過程中的學習困難,可以利用C語言進行編程過程中的技巧來有效地提高學習興趣,而且可以對教學效果以及學習效率具有顯著的提升。
[1]劉小艮.探究C語言編程技巧在C語言學習中的應用[J].科技展望,2016(7):298.
[2]胡渝蘋.關(guān)于計算機C語言編輯程序技巧探究[J].信息與電腦(理論版),2014(11):158.
[3]邢如意.Linux系統(tǒng)下計算機C語言的編程技巧分析[J].電腦知識與技術(shù),2014(36):8674-8675,8690.
[4]劉秀明.基于C語言的計算機軟件編程實驗研究[J].電子技術(shù)與軟件工程,2014(5):263.
Research on application of C language programming skills in C language learning
Tian Chi
(Science College of Tieling Normal Higher Training School,Tieling 112000,China)
As one of the important programming language,C language has become increasingly prominent.C language has a very powerful function as well as many of the advantages of language,which makes it get the general attention of the major colleges and universities and it becomes a compulsory or elective courses in science and engineering major.But because the C language's contents are very complex and tedious,and learning process is boring,the beginner students have great difficulties in learning,so mastering the programming skills for learning C language will be of great benefit,this paper will analyze the programming skills from several aspects.
C language;programming skills;C language learning;application research
田馳(1981—),女,遼寧鞍山,碩士,講師;研究方向:計算機語言。