• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      淺論《C語(yǔ)言程序設(shè)計(jì)》的學(xué)習(xí)方法

      2019-12-10 09:30張橋珍
      中國(guó)科技縱橫 2019年20期
      關(guān)鍵詞:C語(yǔ)言程序設(shè)計(jì)C語(yǔ)言學(xué)習(xí)方法

      張橋珍

      摘 要:C語(yǔ)言是高職院校計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的專(zhuān)業(yè)基礎(chǔ)課程,一般在大一上學(xué)期開(kāi)設(shè)。學(xué)習(xí)C語(yǔ)言的目的是培養(yǎng)計(jì)算機(jī)專(zhuān)業(yè)學(xué)生的計(jì)算機(jī)程序設(shè)計(jì)思維,理解計(jì)算機(jī)解題的思路,掌握C語(yǔ)言程序設(shè)計(jì)的方法,最后能夠具備運(yùn)用C語(yǔ)言進(jìn)行編程來(lái)解決實(shí)際問(wèn)題的能力。C語(yǔ)言作為高職學(xué)生學(xué)習(xí)的第一種計(jì)算機(jī)語(yǔ)言,還有利于培養(yǎng)學(xué)生良好的程序設(shè)計(jì)風(fēng)格,為以后其他課程(如數(shù)據(jù)結(jié)構(gòu)、JAVA程序設(shè)計(jì)等)的學(xué)習(xí)打下堅(jiān)實(shí)的基礎(chǔ)。

      關(guān)鍵詞:C語(yǔ)言;學(xué)習(xí)方法;語(yǔ)法;調(diào)試;編程

      中圖分類(lèi)號(hào):TP312.1-4 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-2064(2019)20-0198-02

      1 C語(yǔ)言簡(jiǎn)介

      C語(yǔ)言是一種結(jié)構(gòu)化、高級(jí)程序設(shè)計(jì)語(yǔ)言,具有簡(jiǎn)潔、緊湊、高效等特點(diǎn)。C語(yǔ)言簡(jiǎn)單易學(xué),可移植性好,運(yùn)行速度接近于低級(jí)語(yǔ)言,在目前的軟件行業(yè)中使用十分廣泛,具有廣闊的發(fā)展前景。

      2 C語(yǔ)言程序步開(kāi)發(fā)步驟

      (1)編輯。打開(kāi)編輯軟件編寫(xiě)源程序,最后保存為“*.c”。

      (2)編譯。C語(yǔ)言的源程序并不能直接運(yùn)行,系統(tǒng)還需要對(duì)源程序進(jìn)行“編譯”,編譯是對(duì)程序中的所有語(yǔ)句進(jìn)行檢查,如果發(fā)現(xiàn)程序中有語(yǔ)法或邏輯錯(cuò)誤,系統(tǒng)會(huì)給出錯(cuò)誤提示,當(dāng)所有錯(cuò)誤排除后,編譯完成,系統(tǒng)生成目標(biāo)文件“*.obj”。

      (3)連接和運(yùn)行。源程序編譯后生成的目標(biāo)文件也不能直接運(yùn)行。還必須和系統(tǒng)的庫(kù)函數(shù)“*.lib”連接在一起,生成可執(zhí)行文件“*.exe”,這個(gè)可執(zhí)行文件可以脫離開(kāi)發(fā)環(huán)境、直接在操作系統(tǒng)下直接運(yùn)行。

      需要注意的是:如果程序運(yùn)行后,結(jié)果正確,這個(gè)C語(yǔ)言程序的開(kāi)發(fā)工作便到此完成了。如果運(yùn)行出錯(cuò)或結(jié)果有誤,說(shuō)明程序還存在一定的問(wèn)題,需要再次修改源程序,然后重復(fù)上面的過(guò)程,即“編輯→編譯→連接→運(yùn)行”,直到得到正確結(jié)果為止。

      3 學(xué)習(xí)C語(yǔ)言的方法

      作為一個(gè)初學(xué)者,學(xué)習(xí)C語(yǔ)言可以分為以下四個(gè)步驟。

      3.1 學(xué)習(xí)語(yǔ)法

      小學(xué)生要寫(xiě)一篇文章,必須要從字、詞、句開(kāi)始學(xué)習(xí),在這基礎(chǔ)上才可以寫(xiě)成一篇文章,學(xué)習(xí)C語(yǔ)言也是一樣,如果要編寫(xiě)一個(gè)程序,必須要學(xué)習(xí)C語(yǔ)言的基本語(yǔ)法,C語(yǔ)言語(yǔ)法包括數(shù)據(jù)類(lèi)型、運(yùn)算符、表達(dá)式、數(shù)組、邏輯運(yùn)算、函數(shù)、指針等??梢赃x擇一本合適的教材,認(rèn)真學(xué)習(xí)前面的語(yǔ)法,學(xué)習(xí)過(guò)程中遇到難以理解的概念,可以上機(jī)驗(yàn)證,增強(qiáng)理解。上機(jī)驗(yàn)證就要求掌握一個(gè)簡(jiǎn)單的C語(yǔ)言程序的從編寫(xiě)到運(yùn)行的全過(guò)程。比如,C語(yǔ)言程序的組成和結(jié)構(gòu),C語(yǔ)言的輸入和輸出函數(shù)用法,以及C語(yǔ)言源程序的編寫(xiě)、編譯和運(yùn)行的方法等。

      3.2 編寫(xiě)程序

      計(jì)算機(jī)編程語(yǔ)言都是實(shí)踐性很強(qiáng)的語(yǔ)言,C語(yǔ)言也是如此。在學(xué)習(xí)掌握了C語(yǔ)言的基本語(yǔ)法后,就可以利用C語(yǔ)言進(jìn)行簡(jiǎn)單的程序設(shè)計(jì)了。C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,分為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),每一種結(jié)構(gòu)特點(diǎn)都要了如指掌,每一個(gè)語(yǔ)句的語(yǔ)法、格式和功能都要通過(guò)編程實(shí)踐加深理解,不斷強(qiáng)化。學(xué)習(xí)C語(yǔ)言的最終目的,是能夠通過(guò)它解決實(shí)際問(wèn)題。

      例如:編程實(shí)現(xiàn)對(duì)100個(gè)整數(shù)進(jìn)行從小到大排序。要解決這個(gè)問(wèn)題,首先要設(shè)計(jì)合適算法。思考以下問(wèn)題:這100個(gè)數(shù)采用什么數(shù)據(jù)類(lèi)型、如何定義、用哪種方法排序、怎樣輸出結(jié)果。思考結(jié)果如下:本題數(shù)據(jù)量大,用數(shù)組比較合適,然后定義數(shù)組變量,并給變量賦值,接下來(lái)進(jìn)行排序,可以選擇冒泡排序、選擇排序等,最后進(jìn)行輸出,因?yàn)閿?shù)據(jù)量大,輸出是采用循環(huán)語(yǔ)句實(shí)現(xiàn)等。然后是具體的代碼實(shí)現(xiàn)過(guò)程,即編寫(xiě)源程序,最后編譯、組建和運(yùn)行程序。

      3.3 程序調(diào)試及錯(cuò)誤分析

      3.3.1 程序調(diào)試

      所謂程序調(diào)試是程序編寫(xiě)完成后,還沒(méi)有運(yùn)行之前,對(duì)程序進(jìn)行測(cè)試,修改其中的語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤,以保證程序正確運(yùn)行并得到正確的結(jié)果。調(diào)試程序一般應(yīng)經(jīng)過(guò)以下幾個(gè)步驟。

      (1)手工查錯(cuò)。當(dāng)程序編寫(xiě)完成后,不要馬上就開(kāi)始執(zhí)行,可以先把程序從頭到尾按順序捋一遍,看看有沒(méi)有標(biāo)點(diǎn)符號(hào)的錯(cuò)誤和括號(hào)不成對(duì)的情況出現(xiàn),通過(guò)這個(gè)過(guò)程,可以發(fā)現(xiàn)程序中出現(xiàn)的大部分錯(cuò)誤,并及時(shí)修正。這一步尤其重要。手工查錯(cuò)還應(yīng)注意以下幾個(gè)方面:1)程序代碼層次分明,書(shū)寫(xiě)規(guī)范,讓別人一眼就能明白程序的思路與用意,保證程序質(zhì)量。2)在程序中多使用注釋?zhuān)⑨尶梢詭椭x者理解每段程序的功能,大大提高程序的可讀性。3)善于使用函數(shù),把復(fù)雜程序分解成一個(gè)個(gè)模塊,每個(gè)模塊用一個(gè)獨(dú)立的函數(shù)實(shí)現(xiàn),避免程序中的全部語(yǔ)句都寫(xiě)在main函數(shù)中,這樣不利于查錯(cuò)和排錯(cuò)。

      (2)手工檢查完成后,就可以開(kāi)始“編譯”,在編譯時(shí)如果程序中有錯(cuò)誤系統(tǒng)會(huì)給出相應(yīng)的錯(cuò)誤信息提示,根據(jù)提示在程序中找出出錯(cuò)的具體位置并努力改正。應(yīng)該引起注意的是:有時(shí)在提示出錯(cuò)的位置找不到錯(cuò)誤,應(yīng)當(dāng)?shù)皆谔崾境鲥e(cuò)的行的附近再找,如果實(shí)在找不到錯(cuò)誤,可以采用逐步減小“查錯(cuò)區(qū)”的方法。將程序代碼分為幾個(gè)模塊,每次先執(zhí)行一個(gè)模塊(其余模塊可以設(shè)置成注釋?zhuān)瑘?zhí)行完本模塊如果沒(méi)有發(fā)現(xiàn)問(wèn)題,再接著執(zhí)行兩個(gè)模塊,依次類(lèi)推,用這種方法,最后可以把錯(cuò)誤的模塊找出來(lái),然后集中精力修改本模塊,這種“分模塊”查找錯(cuò)誤的方法是檢查復(fù)雜程序出錯(cuò)位置時(shí)經(jīng)常使用的方法。

      另外提示出錯(cuò)的類(lèi)型也不一定準(zhǔn)確,如果出現(xiàn)錯(cuò)誤,往往情況復(fù)雜,且與其它語(yǔ)句互相關(guān)聯(lián)。如果編譯過(guò)程中出現(xiàn)的出錯(cuò)信息很多,應(yīng)當(dāng)從上到下逐一改正。有時(shí)顯示出一大片出錯(cuò)信息往往使人感到問(wèn)題嚴(yán)重,無(wú)從下手。其實(shí)可能只有一兩個(gè)錯(cuò)誤。例如,程序中使用的所標(biāo)點(diǎn)符號(hào)是都是中文符號(hào),或者有變量未定義,編譯時(shí)就會(huì)對(duì)所有含該變量的語(yǔ)句發(fā)出錯(cuò)誤信息,這時(shí)只要加上一個(gè)變量定義,所有錯(cuò)誤就都排除了。因此要多多實(shí)踐,總結(jié)經(jīng)驗(yàn),盡量減少在編寫(xiě)程序時(shí)出錯(cuò)。

      注意:當(dāng)程序編譯完成后,程序可以正常執(zhí)行。通常要對(duì)程序執(zhí)行的結(jié)果進(jìn)行分析,有可能運(yùn)行結(jié)果只是在某種條件下剛好正確,不一定適合所有情況,可以選擇幾個(gè)關(guān)鍵數(shù)據(jù)進(jìn)行驗(yàn)證。如果發(fā)現(xiàn)問(wèn)題,就需要對(duì)程序進(jìn)一步修改,以保證程序功能的完整實(shí)現(xiàn)。

      3.3.2 錯(cuò)誤分析及對(duì)策

      通過(guò)教學(xué)調(diào)研發(fā)現(xiàn),學(xué)生在C語(yǔ)言學(xué)習(xí)和編程過(guò)程中總會(huì)出現(xiàn)各種各樣的錯(cuò)誤,有些學(xué)生發(fā)現(xiàn)問(wèn)題往往六神無(wú)主,不知從何下手。如果想降低錯(cuò)誤出現(xiàn)的機(jī)率,就必須了解C語(yǔ)言程序設(shè)計(jì)中可能出現(xiàn)的錯(cuò)誤類(lèi)型及其糾正方法。C語(yǔ)言程序設(shè)計(jì)的錯(cuò)誤大致可分為四種,即語(yǔ)法錯(cuò)誤、連接錯(cuò)誤、邏輯錯(cuò)誤和運(yùn)行錯(cuò)誤。具體分析如下。

      (1)語(yǔ)法錯(cuò)誤。語(yǔ)法錯(cuò)誤是指在編寫(xiě)程序時(shí)沒(méi)有遵循C語(yǔ)言的語(yǔ)法規(guī)定。比如出現(xiàn)關(guān)鍵字拼寫(xiě)錯(cuò)誤、漏寫(xiě)標(biāo)點(diǎn)符號(hào)或標(biāo)點(diǎn)符號(hào)寫(xiě)成中文標(biāo)點(diǎn)符號(hào)、數(shù)據(jù)運(yùn)算類(lèi)型不匹配、括號(hào)不配對(duì)等都屬于語(yǔ)法錯(cuò)誤,出現(xiàn)這類(lèi)錯(cuò)誤時(shí),程序編譯過(guò)程中,系統(tǒng)會(huì)給出出錯(cuò)行和相應(yīng)“出錯(cuò)信息”。

      對(duì)策:雙擊錯(cuò)誤提示行,出錯(cuò)代碼所在的出錯(cuò)行立即被定位,然后根據(jù)錯(cuò)誤提示修改源程序,排除錯(cuò)誤。

      (2)連接錯(cuò)誤。如果C語(yǔ)言程序中函數(shù)調(diào)用出現(xiàn)錯(cuò)誤,可能是函數(shù)不存在或函數(shù)名稱(chēng)有誤,編譯系統(tǒng)在對(duì)其進(jìn)行連接時(shí)便會(huì)發(fā)現(xiàn)這一錯(cuò)誤。

      對(duì)策:雙擊錯(cuò)誤提示行定位錯(cuò)誤代碼,然后根據(jù)錯(cuò)誤進(jìn)行修改。

      (3)邏輯錯(cuò)誤。如果程序中沒(méi)有發(fā)現(xiàn)語(yǔ)法錯(cuò)誤或邏輯錯(cuò)誤,程序能正常運(yùn)行,但程序運(yùn)行結(jié)果跟實(shí)際情況不符,出現(xiàn)這種情況很可能是程序出現(xiàn)了邏輯錯(cuò)誤。邏輯錯(cuò)誤往往是因?yàn)槌绦虿捎玫乃惴ㄓ袉?wèn)題,或編寫(xiě)的程序邏輯與算法不完全吻合。排除邏輯錯(cuò)誤難度相對(duì)比較大,要求程序編寫(xiě)者具備相當(dāng)?shù)乃惴ㄋ季S,并對(duì)程序結(jié)構(gòu)和語(yǔ)句功能了如指掌。

      對(duì)策:重新整理編程思路,逐步調(diào)試,檢測(cè)程序中復(fù)雜語(yǔ)句或功能模塊(如多重循環(huán)、多重分支等)是否正確,可以在不同階段輸出變量的值,觀察結(jié)果,這樣逐步來(lái)找到錯(cuò)誤并最終解決問(wèn)題。

      (4)運(yùn)行錯(cuò)誤。如果程序中沒(méi)有出現(xiàn)以上三種錯(cuò)誤,但是發(fā)現(xiàn)程序運(yùn)行結(jié)果不穩(wěn)定,即有時(shí)結(jié)果正確,有時(shí)錯(cuò)誤。這種錯(cuò)誤可能是由于程序不夠完整,不適用于所有情況或者軟件版本或設(shè)置有問(wèn)題。

      對(duì)策:對(duì)程序進(jìn)行完整性檢查或查看軟件版本或設(shè)置。

      3.4 總結(jié)與反思

      在C語(yǔ)言的學(xué)習(xí)過(guò)程中,要善于進(jìn)行規(guī)納總結(jié)。每次程序運(yùn)行中出現(xiàn)的錯(cuò)誤都要吸取教訓(xùn),避免下次再犯,并不斷形成自己的經(jīng)驗(yàn)。只有多進(jìn)行編程練習(xí),多思考程序出錯(cuò)的原因并及時(shí)總結(jié),才能不斷提高。

      4 C語(yǔ)言的發(fā)展趨勢(shì)

      隨著信息化、智能化、網(wǎng)絡(luò)化的發(fā)展,嵌入式系統(tǒng)技術(shù)的發(fā)展,C語(yǔ)言的地位也會(huì)越來(lái)越高。C語(yǔ)言還將在云計(jì)算、物聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)、智能家居、虛擬世界等未來(lái)信息技術(shù)中發(fā)揮重要作用。

      On the Learning Method of ?C Language Programming

      ZHANG Qiao-zhen

      (Huanggang Vocational College of Science and Technology in Hubei Province zip code,Huanggang Hubei ?438000)

      Abstract:C language is a professional basic course of computer related majors in high vocational colleges, which is generally opened in the first semester of the first year. The purpose of learning C language is to train students majoring in computer programming thinking, understand the thinking of computer problem solving, master the programming methods of C language, and finally be able to use C language to program to solve practical problems. As the first computer language that students learn in high vocational colleges, C language is also conducive to cultivating students' good programming style, which lays a solid foundation for the later learning of other courses (such as data structure, JAVA programming, etc.)

      Key words:C language;learning method;syntax;debugging;programming

      猜你喜歡
      C語(yǔ)言程序設(shè)計(jì)C語(yǔ)言學(xué)習(xí)方法
      基于Visual Studio Code的C語(yǔ)言程序設(shè)計(jì)實(shí)踐教學(xué)探索
      基于C語(yǔ)言的計(jì)算機(jī)軟件編程
      高職高專(zhuān)院校C語(yǔ)言程序設(shè)計(jì)教學(xué)改革探索
      論高中物理電路知識(shí)的學(xué)習(xí)方法及解題思路
      小學(xué)語(yǔ)文低段識(shí)字教學(xué)的意義及學(xué)習(xí)方法
      論子函數(shù)在C語(yǔ)言數(shù)據(jù)格式輸出中的應(yīng)用
      忻州市| 柳州市| 连州市| 平利县| 镇坪县| 平阳县| 邯郸市| 平潭县| 临泽县| 阿合奇县| 齐河县| 天柱县| 张家川| 瑞安市| 惠州市| 娱乐| 昔阳县| 贵港市| 舒城县| 钦州市| 青铜峡市| 武川县| 北川| 聂荣县| 且末县| 石阡县| 资阳市| 定远县| 贺州市| 武胜县| 平乡县| 华蓥市| 满洲里市| 原平市| 牡丹江市| 贺州市| 易门县| 嘉定区| 安岳县| 八宿县| 加查县|