C語言范文10篇

時(shí)間:2024-01-15 14:11:42

導(dǎo)語:這里是公務(wù)員之家根據(jù)多年的文秘經(jīng)驗(yàn),為你推薦的十篇C語言范文,還可以咨詢客服老師獲取更多原創(chuàng)文章,歡迎參考。

C語言

C語言教學(xué)對(duì)策

1引言

在目前的程序設(shè)計(jì)課程教學(xué)中如何突出對(duì)學(xué)生編程能力的培養(yǎng),是一個(gè)亟待解決的問題。對(duì)于計(jì)算機(jī)專業(yè)學(xué)生來說,C語言程序設(shè)計(jì)是一門專業(yè)基礎(chǔ)課,對(duì)后續(xù)專業(yè)課程至關(guān)重要。然而,國(guó)內(nèi)中職學(xué)校該類課程的教學(xué)模式仍停留在傳統(tǒng)的模式上,過于注重語句、語法和一些細(xì)節(jié),基本上是以高級(jí)語言自身的體系為脈絡(luò)展開的,沒有把邏輯與編程解題思路放在主體地位上。這些問題是否能夠被很好地解決已成為中職學(xué)校計(jì)算機(jī)教學(xué)成敗的關(guān)鍵。作為教師,在計(jì)算機(jī)教學(xué)中,應(yīng)不斷地改變教育觀念,以學(xué)生為主體,創(chuàng)造性地組織教學(xué)內(nèi)容,設(shè)計(jì)教學(xué)結(jié)構(gòu),注重挖掘?qū)W生的潛力,從而使學(xué)生的計(jì)算機(jī)學(xué)習(xí)成為一種自覺自愿的活動(dòng),進(jìn)而使計(jì)算機(jī)教育的改革不斷推向深入,最終使計(jì)算機(jī)學(xué)習(xí)超越課堂空間。為達(dá)到這一目的,C語言程序設(shè)計(jì)應(yīng)采用如下教學(xué)方法。

2強(qiáng)調(diào)學(xué)習(xí)C語言的重要性,激發(fā)學(xué)生的學(xué)習(xí)主動(dòng)性

C語言是目前世界上使用最為廣泛的計(jì)算機(jī)語言之一,它是一種介于匯編語言與高級(jí)語言之間的編程語言。教師可以在第一節(jié)C語言課中就讓學(xué)生看一下在圖形模式下用C語言繪制出來的、類似WINDOWS的窗口,讓學(xué)生感受和體會(huì)一下圖形模式下C語言的編程;使他們知道,C語言作為一種計(jì)算機(jī)編程語言,它是可以在任何一種平臺(tái)上編程的,只是接口不同而已。只要找到適合該平臺(tái)的編程工具,C語言在WINDOWS下同樣也能充分發(fā)揮其特長(zhǎng),從而激發(fā)學(xué)生的學(xué)習(xí)積極性和主動(dòng)性。

3采取粗講和細(xì)講的方法

中職學(xué)校計(jì)算機(jī)教學(xué)的特點(diǎn)是:知識(shí)更新快、內(nèi)容范圍廣、應(yīng)用要求高,由此帶來的問題之一就是課時(shí)的相對(duì)減少。在實(shí)際教學(xué)工作中,我體會(huì)到,要緩解課程內(nèi)容多和學(xué)時(shí)相對(duì)少的矛盾,就是要將“粗講”和“細(xì)講”結(jié)合起來,例如:在“C語言程序設(shè)計(jì)”課的教學(xué)中,前面的幾章是一系列規(guī)則性、語言的語法要求很強(qiáng)且很瑣碎的內(nèi)容,如果一開始就按部就班地一條條給學(xué)生講解這些規(guī)則,常常使學(xué)生產(chǎn)生“只見樹木,不見森林”、茫然不知所措的感覺。所以應(yīng)該先通過一個(gè)簡(jiǎn)單的C語言程序?qū)嵗凹?xì)講”為什么要制定這些規(guī)則,使學(xué)生清楚這些規(guī)則在程序中的用途,然后對(duì)于這些規(guī)則“是什么”就可有代表性“粗講”,甚至有些部分可以不講,讓學(xué)生邊用邊學(xué)。

查看全文

C語言變量理解

一、變量的概念

程序設(shè)計(jì)就是讓計(jì)算機(jī)按照一定的指令來進(jìn)行工作,可以說數(shù)據(jù)的處理是程序設(shè)計(jì)的主要任務(wù)。那么數(shù)據(jù)是怎么加入到計(jì)算機(jī)的內(nèi)存中呢?計(jì)算機(jī)最初的功能就是能夠存儲(chǔ)數(shù)據(jù)并處理數(shù)據(jù)的機(jī)器。那么數(shù)據(jù)是怎么加入到計(jì)算機(jī)的內(nèi)存中呢?在學(xué)習(xí)程序設(shè)計(jì)之前,很多學(xué)生對(duì)計(jì)算機(jī)的硬件設(shè)施都大概已經(jīng)很熟悉了。計(jì)算機(jī)的硬件設(shè)施中有一個(gè)區(qū)域是用來存儲(chǔ)數(shù)據(jù)的,計(jì)算機(jī)在工作的過程中會(huì)頻繁的從這個(gè)區(qū)域讀入和讀出數(shù)據(jù)。要想讓計(jì)算機(jī)按照某些指令(程序)自動(dòng)工作,首先必須把數(shù)據(jù)存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)空間中。在某種計(jì)算機(jī)語言中實(shí)現(xiàn)這種數(shù)據(jù)存儲(chǔ)功能的就是變量。變量就是計(jì)算機(jī)內(nèi)存中的某一個(gè)存儲(chǔ)單元。

二、變量的定義

C語言中變量在使用之前必須先對(duì)其進(jìn)行定義,變量的定義的一般形式如下:【存儲(chǔ)類別】數(shù)據(jù)類型變量名;其中存儲(chǔ)類別是可以省略的。

1、存儲(chǔ)類別計(jì)算機(jī)的內(nèi)存一般分為三個(gè)部分:1)程序區(qū);2)靜態(tài)存儲(chǔ)區(qū);3)動(dòng)態(tài)存儲(chǔ)區(qū);為了高效的發(fā)揮計(jì)算機(jī)的功能,不同類型的變量存放在不同的內(nèi)存區(qū)域。變量的存儲(chǔ)類別決定了變量中的數(shù)據(jù)在計(jì)算機(jī)內(nèi)存中的存儲(chǔ)位置。C語言中局部變量存放在動(dòng)態(tài)存儲(chǔ)區(qū),全局變量或者靜態(tài)變量存放在靜態(tài)存儲(chǔ)區(qū)。

2、數(shù)據(jù)類型在用程序處理問題之前,首先必須確定用何種方式描述問題中所涉及到的數(shù)據(jù)。這個(gè)問題在C語言中是由數(shù)據(jù)類型來決定的。變量的本質(zhì)表現(xiàn)為在計(jì)算機(jī)中的存在時(shí)間和存儲(chǔ)空間。變量的數(shù)據(jù)類型是用來決定變量在計(jì)算機(jī)中占用內(nèi)存空間的大小。比如:整型數(shù)據(jù)在TC編譯系統(tǒng)中占用兩個(gè)字節(jié)的存儲(chǔ)空間。C語言變量的類型不僅確定了數(shù)據(jù)在計(jì)算機(jī)內(nèi)存中的存儲(chǔ)區(qū)域的大小,同時(shí)確定了該數(shù)據(jù)能夠參與的各種運(yùn)算。任何一個(gè)C語言的變量必須有確定的數(shù)據(jù)類型,不管這個(gè)變量如何變化,變量的值都必須符合該變量數(shù)據(jù)類型的規(guī)定。

查看全文

C語言循環(huán)命令運(yùn)用

1.C語言的應(yīng)用

隨著計(jì)算機(jī)的普及用,越來越多的人感覺到現(xiàn)有的計(jì)算機(jī)的應(yīng)用不能滿足越來越多、越來越復(fù)雜的事物處理,所以希望自己能夠根據(jù)所遇到不同的情況來設(shè)計(jì)、制作、開發(fā)相對(duì)靈活的控制程序。這樣既可以滿足個(gè)人的需要,又能滿足其它不同的使用用途。C語言是高級(jí)語言的基礎(chǔ),學(xué)習(xí)計(jì)算機(jī)語言要從C語言入手,C是面向過程編程的,這樣會(huì)把所有的功能包含在幾個(gè)(通常是一個(gè))代碼模塊中。便于以后可以通過不同的用途來進(jìn)行移植,可以對(duì)不同的控制項(xiàng)目產(chǎn)生相同的效果。C語言的優(yōu)點(diǎn)很多,但是現(xiàn)對(duì)于其他語言的優(yōu)點(diǎn)就是可以在多種操作系統(tǒng)下運(yùn)行。

2.C語言中的循環(huán)語句

C語言中的循環(huán)語句的作用是為了使同一個(gè)事物具有相同的操作,這可以大大減少程序的復(fù)雜性,能夠提高程序的運(yùn)行效率。在日常使用中的問題中有許多具有相同規(guī)律的重復(fù)動(dòng)作,因此在程序設(shè)計(jì)中就要對(duì)這些相同的動(dòng)作,重復(fù)使用這些語句。一組被不斷重復(fù)使用的語句稱之為循環(huán)語句,如果循環(huán)的終止條件被觸發(fā),那么就要終止循環(huán)。循環(huán)語句由兩部分組成,即循環(huán)體及循環(huán)的終止條件。在C語言中,包含以下循環(huán)語句:for、while和doWhile。

分別介紹如下:

1、for循環(huán)for語句格式為:for(a;b;c){……}.該語句執(zhí)行流程如下:①先對(duì)a賦初值;②判別b是否滿足給定條件,若其值為真,滿足循環(huán)條件,則執(zhí)行循環(huán)體內(nèi)語句,然后執(zhí)行c,進(jìn)入第二次循環(huán),再判別b……;否則判斷b的值為假,不滿足條件,就終止for循環(huán),執(zhí)行循環(huán)體外語句。如例子for(n=1;n<=200;n++){......}:在程序中,for語句括號(hào)內(nèi)的三個(gè)值分別為:n=1;n<=200;n++。位置a,n=1是給n賦初值,b是關(guān)系表達(dá)式,n小于等于200時(shí),a、b、c都為真,則執(zhí)行{}內(nèi)的語句,進(jìn)入下一循環(huán);若n大于200時(shí),b為假,則終止循環(huán)。for語句的特殊用法:(1)for判斷語句內(nèi)三個(gè)表達(dá)式為空。例for(;;)printf("null");在()內(nèi)只有兩個(gè)分號(hào),無表達(dá)式。表示無限循環(huán)。這種無限循環(huán)適用于菜單選擇程序制作中。(2)沒有{……}的for語句,例:for(;str=='''''''';str++);這種()內(nèi)的語句只是一個(gè)分號(hào),這個(gè)for循環(huán)是指針str所指流中的前導(dǎo)空格刪除。例:for(t=1;t;)此例在程序中起延長(zhǎng)時(shí)間作用。通過以上for循環(huán)的例子可以看出,不同的for應(yīng)用對(duì)應(yīng)的是不同的結(jié)果。這就需要根據(jù)不同的要求來詳細(xì)的設(shè)計(jì)。

查看全文

C語言函數(shù)教學(xué)

C語言的學(xué)習(xí)在整個(gè)計(jì)算機(jī)專業(yè)甚至非計(jì)算機(jī)專業(yè)的學(xué)習(xí)中都有舉足輕重的作用。函數(shù)的學(xué)習(xí)在C語言的學(xué)習(xí)中是具有靈魂作用的一章。根據(jù)筆者多年的C語言教學(xué)經(jīng)驗(yàn),發(fā)現(xiàn)很多學(xué)生在進(jìn)行函數(shù)的學(xué)習(xí)時(shí),遇到很大的困難。很多學(xué)生因?yàn)楹瘮?shù)沒搞清楚,導(dǎo)致整個(gè)C語言的水平永遠(yuǎn)只停留在入門的階段。分析原因,一是大多課本函數(shù)知識(shí)的安排很靠后,這樣函數(shù)在整個(gè)C語言的學(xué)習(xí)中課時(shí)較少;二是我認(rèn)為大多是教學(xué)方法不合理,很多教師過分注重C語言語法知識(shí)的學(xué)習(xí),沒有注重編程思想的培養(yǎng)。

一、函數(shù)的概念函數(shù)是一組語句,這組語句可以完成一個(gè)獨(dú)立的操作,這組語句有一個(gè)簡(jiǎn)短的名字,程序員可以僅僅利用這個(gè)名字完成某個(gè)操作。函數(shù)的使用,使復(fù)雜的程序變得簡(jiǎn)單化、條理化、清晰化。在C語言中函數(shù)分為兩大類:庫函數(shù)、用戶自定義函數(shù)。

1、庫函數(shù)在編寫程序的過程中往往有一些操作需要頻繁的使用,并且這些操作的代碼實(shí)現(xiàn)又有一定的難度。比如數(shù)據(jù)的輸入、輸出。在C語言中是沒有輸入輸出語句的,由于輸入輸出涉及到多計(jì)算機(jī)硬件的直接操作,對(duì)用戶來說較困難。這些操作往往由編譯系統(tǒng)的開發(fā)商提供給用戶。它們都是以獨(dú)立程序塊的模式出現(xiàn),并且存在于編譯系統(tǒng)的某個(gè)文件中,這就是庫函數(shù)。比如printf(),scanf()。它們是由編譯程序根據(jù)一般用戶的需要編制并提供給用戶使用的一組程序代碼。C語言的庫函數(shù)極大地方便了用戶,同時(shí)也補(bǔ)充了C語言本身的不足。事實(shí)上,在編寫C語言程序時(shí),應(yīng)當(dāng)盡可能多地使用庫函數(shù),這樣既可以提高程序的運(yùn)行效率,又可以提高編程的質(zhì)量。

2、用戶自定義函數(shù)用戶自定義函數(shù)顧名思義就是用戶自己定義的函數(shù)。程序的編寫過程其實(shí)就是一個(gè)個(gè)函數(shù)的定義過程。很多情況下,C語言的編譯系統(tǒng)提供給我們的函數(shù)并不能滿足用戶的要求,這就要求用戶自己編寫函數(shù)。函數(shù)是由一組語句組成,并給定一個(gè)名字。相應(yīng)的函數(shù)的定義一般可分為兩大部分:函數(shù)頭部的定義、函數(shù)體的定義。形式如下:函數(shù)的類型函數(shù)名(函數(shù)的參數(shù)){函數(shù)體;}上面大括號(hào)上邊的一行成為函數(shù)的頭部(首部),它給出了函數(shù)的表面信息:函數(shù)返回值的類型,函數(shù)的名字,函數(shù)要處理的數(shù)據(jù);大括號(hào)內(nèi)的語句描述了函數(shù)的內(nèi)在構(gòu)造,這組語句完成一個(gè)獨(dú)立的操作,是對(duì)函數(shù)能夠完成功能的具體描述。

3、函數(shù)的調(diào)用函數(shù)是由一組語句組成,并給定一個(gè)名字。執(zhí)行與函數(shù)相關(guān)的一組語句的行為稱為函數(shù)的調(diào)用。應(yīng)該說函數(shù)定義好之后調(diào)用之前是沒有什么意義的。函數(shù)就像某個(gè)具有特殊功能的機(jī)器工具。這些機(jī)器只有在開關(guān)打開之后才能發(fā)揮作用。在程序編寫過程中,完成“開關(guān)機(jī)器”這個(gè)操作的就是函數(shù)調(diào)用。函數(shù)調(diào)用的一般形式:函數(shù)名(實(shí)際參數(shù));

二、函數(shù)的教學(xué)C語言函數(shù)的教學(xué)主要是學(xué)習(xí)自定義函數(shù)以及庫函數(shù)的使用。

查看全文

C語言形象比喻應(yīng)用

1比喻貼近生活,變抽象為直觀比喻使用的例子要源于生活,盡量選用學(xué)生熟知的、感興趣的,或是與他們生活密切相關(guān)的事物,借以說明抽象的C語言問題,進(jìn)而使學(xué)生理解和掌握知識(shí)點(diǎn)。案例:“指針概念”的講解。指針的概念一直是C語言教學(xué)中的難點(diǎn),“指針是一個(gè)存放另一變量地址的變量,由于這個(gè)變量指向的是地址,故稱它為指針?!睂W(xué)生單從字面上很難理解,可以通過下面的例子幫助學(xué)生理解指針的概念:新生要去教務(wù)處,但不認(rèn)識(shí)路。有老師告訴他:你去101。新生到了101,發(fā)現(xiàn)這里并不是教務(wù)處。可桌上有張紙條“教務(wù)處在105”。學(xué)生根據(jù)紙條內(nèi)容,在105找到了教務(wù)處(表1)。通過這樣一個(gè)圖示,學(xué)生明白了:有一種變量,是用來存放另一個(gè)變量地址的,這種變量稱為指針。對(duì)初學(xué)者而言,任何標(biāo)準(zhǔn)化的定義都是抽象的,甚至不知所云。此時(shí),形象比喻顯得十分重要,可以把抽象轉(zhuǎn)為直觀,學(xué)生增強(qiáng)學(xué)習(xí)信心的同時(shí),也加深了對(duì)知識(shí)點(diǎn)理解。

2比喻通俗易懂,具有延伸性列舉實(shí)例要通俗易懂,引用生活中的簡(jiǎn)單事物闡述C語言復(fù)雜的知識(shí)點(diǎn),同時(shí),考慮到知識(shí)點(diǎn)的連貫性,比喻對(duì)象也需要具有延伸性,方便學(xué)生在已有知識(shí)的基礎(chǔ)上接受新內(nèi)容。案例:“數(shù)組概念”的講解。“在程序設(shè)計(jì)中,為了處理方便,把具有相同類型的若干變量按有序的形式組織起來,這些按序排列的同類數(shù)據(jù)元素的集合稱為數(shù)組?!闭Э雌饋砗艹橄?但是如果通過形象比喻,學(xué)生就會(huì)很清楚。用“客棧房間”作比:當(dāng)定義了intarray,表示在內(nèi)存中開辟了10個(gè)連續(xù)空間,下標(biāo)從0~9;只能存放int數(shù)值。就好比在客棧定下了10個(gè)房間,門牌號(hào)從0開始一直到9,然后客人依次入住;客人的身份也有一定的要求,只能是int型的客人才能入住。由此,學(xué)生掌握了使用數(shù)組需要注意的細(xì)節(jié)。當(dāng)教師提出array元素是否存在時(shí),學(xué)生能夠迅速聯(lián)想到號(hào)碼為10的房間不存在,由此順利延伸出“越界”的概念。同時(shí)通過這個(gè)事例,學(xué)生對(duì)一維數(shù)組的理解直觀清晰,在此基礎(chǔ)上加以延伸,使得二維數(shù)組講解也取得了比較好的教學(xué)效果。

3比喻生動(dòng)有趣,寓教于樂利用學(xué)生感興趣的話題,生動(dòng)形象地打比方,用幽默的語言,形象的比喻,激發(fā)學(xué)生學(xué)習(xí)興趣,讓抽象的代碼變成生動(dòng)的故事情節(jié),從而達(dá)到讓學(xué)生熟練編寫代碼的目的。案例:“在有序數(shù)組中插入元素”的講解。轉(zhuǎn)化為陳述《武林外傳》中一個(gè)故事情節(jié):同??蜅Y≌乒褚?guī)定,伙計(jì)需按年齡由小到大的順序,依次安排房間入住。老白、郭芙蓉、李大嘴、呂秀才已按要求住下多日,現(xiàn)有年齡為20歲的祝無雙到來,要插入其中,想保持原來順序不變,該如何操作?(表2)故事講完了,令學(xué)生困擾的代碼結(jié)構(gòu)也搭建完畢,在此基礎(chǔ)上稍加完善,完整的代碼就誕生了。學(xué)生在課堂上體現(xiàn)了極大的熱情,以重現(xiàn)故事過程的形式,完成了代碼的編寫,在輕松愉悅的氣氛中掌握了數(shù)組的實(shí)際應(yīng)用。

4比喻對(duì)象擬人化,突破知識(shí)難點(diǎn)C語言編程有很多固定格式和要求,諸多規(guī)范貫穿在這門課程當(dāng)中,顯然死記硬背只會(huì)削弱學(xué)生的學(xué)習(xí)熱情。此時(shí),可以把基本規(guī)范擬人化,讓每一個(gè)規(guī)范都變得生動(dòng),讓每一段代碼都富有生命。案例:“主函數(shù)與非主函數(shù)間調(diào)用關(guān)系”的講解。

5以“公司老板和員工的關(guān)系”作比(公司老板—主函數(shù)、員工—非主函數(shù)):(1)公司的運(yùn)行,應(yīng)由老板下達(dá)命令;(2)老板可以吩咐員工做事,反之不行;(3)員工之間可以相互幫忙。轉(zhuǎn)化為函數(shù)的概念,即:(1)程序需從main函數(shù)開始執(zhí)行;(2)主函數(shù)可以調(diào)用非主函數(shù),非主函數(shù)不能調(diào)用主函數(shù);(3)非主函數(shù)之間可以相互調(diào)用。利用擬人比喻,學(xué)生再也不會(huì)把相關(guān)概念記混淆,擁有清晰的思路,就能夠編寫出正確的代碼。5比喻深入到應(yīng)用,激發(fā)學(xué)習(xí)動(dòng)力通過形象的比喻,把C語言在工作生活中的重要性、實(shí)用價(jià)值闡述給學(xué)生,培養(yǎng)學(xué)生學(xué)習(xí)的主觀能動(dòng)性。

比如學(xué)生經(jīng)常愛玩的“五子棋”、“貪吃蛇”、“心理測(cè)試”等等,他們雖然無法寫出游戲?qū)?yīng)的復(fù)雜程序,但從中可以感受到誘人的動(dòng)畫效果,計(jì)算機(jī)語言的強(qiáng)大功能。學(xué)生學(xué)好C語言,可以設(shè)計(jì)“個(gè)性計(jì)算器”,給朋友編寫“猜數(shù)字”等等互動(dòng)小游戲。通過形象切實(shí)的比喻,讓學(xué)生知道C語言在現(xiàn)實(shí)生活中非常實(shí)用,認(rèn)識(shí)到C語言是一門很有趣的課程,這樣才能激發(fā)他們更強(qiáng)大的學(xué)習(xí)動(dòng)力,往課程更深處探究。

查看全文

C語言課程教學(xué)綜述

1、引言

現(xiàn)在高等學(xué)校,一般也都根據(jù)不同的需要選用不同的程序設(shè)計(jì)入門課程。其中C語言作為一門程序語言基礎(chǔ)課,由于其功能強(qiáng)、使用靈活等優(yōu)點(diǎn)受到廣泛的歡迎,也就是說C語言已經(jīng)成為了學(xué)習(xí)程序設(shè)計(jì)語言的一個(gè)必要的基礎(chǔ)。在學(xué)時(shí)相對(duì)較少的情況下,學(xué)生要學(xué)好這門課有一定的難度.但依然要提高教學(xué)的質(zhì)量和效果是廣大教學(xué)工作者正在思考和探索的問題.

2、教學(xué)過程中的改進(jìn)

2.1教學(xué)方法的改進(jìn)C語言作為DOS時(shí)代的一種主流程序設(shè)計(jì)語言,已逐漸演變成為一種程序設(shè)計(jì)的入門級(jí)語言——重在使學(xué)生熟悉計(jì)算機(jī)處理事務(wù)的過程,掌握程序設(shè)計(jì)的思想,完成學(xué)生從中學(xué)生到大學(xué)生學(xué)習(xí)思想的轉(zhuǎn)變。因而C語言程序設(shè)計(jì)課程這門課大多高校開設(shè)在一年級(jí)的第一學(xué)期,要從只要求計(jì)算機(jī)基本操作的中學(xué)時(shí)代迅速轉(zhuǎn)換到大學(xué)時(shí)代的程序設(shè)計(jì)員,對(duì)于學(xué)生是一個(gè)逐步轉(zhuǎn)變、逐步學(xué)習(xí)的過程。而對(duì)于我們教育者來說,如何去改進(jìn)現(xiàn)有的教學(xué)方法,正確的引導(dǎo)學(xué)生學(xué)習(xí)思路、學(xué)習(xí)方法的轉(zhuǎn)變,以提高課堂教學(xué)的質(zhì)量.筆者在以下幾方面進(jìn)行了嘗試:

2.1.1教師角色的轉(zhuǎn)變中學(xué)時(shí)代的教學(xué)多以升學(xué)為基本任務(wù)和目標(biāo),所以中學(xué)教師的教學(xué)多以灌輸式為主,在教學(xué)過程中教師始終是主體,而學(xué)生總是被動(dòng)的接受和消化。而大學(xué)時(shí)代的教學(xué)是以培養(yǎng)學(xué)生的基本素養(yǎng)和能力為目標(biāo),因而要求教學(xué)的過程要以學(xué)生為主體,教師要做正確的引路人,而不是知識(shí)的灌輸者。因而教師角色的轉(zhuǎn)變實(shí)際上更多的還是在學(xué)生心目中中學(xué)教師角色到大學(xué)教師角色的轉(zhuǎn)變,要在教學(xué)的第一堂課向?qū)W生宣布這個(gè)事情,使學(xué)生從教師角色的轉(zhuǎn)變到學(xué)生自己明白他們已經(jīng)跨入了人生的有一個(gè)新的階段:自己的學(xué)習(xí)、思想都要有更大的轉(zhuǎn)變,從以前被動(dòng)的接受學(xué)習(xí),到大學(xué)時(shí)期的主動(dòng)自覺的學(xué)習(xí),從而培養(yǎng)和更大的提高他們的學(xué)習(xí)能力和其他方面的能力。

2.1.2課堂實(shí)施的轉(zhuǎn)變C語言作為一門程序設(shè)計(jì)語言自然有它自身的特點(diǎn),但是作為一門言語課,他又脫不開與學(xué)生很熟悉語文、英語這些語言課學(xué)習(xí)的共同之處。根據(jù)筆者的學(xué)習(xí)和教學(xué)經(jīng)驗(yàn):得知更多的學(xué)生在學(xué)習(xí)C語言的過程中,甚至在學(xué)習(xí)完這門課后也不知道C語言的作用是什么,它學(xué)習(xí)的重點(diǎn)內(nèi)容是什么。所以C語言教學(xué)的課堂實(shí)施的轉(zhuǎn)變更是教學(xué)的重中之重:要使學(xué)生從中學(xué)時(shí)期純粹的數(shù)理化的學(xué)習(xí)轉(zhuǎn)變到大學(xué)時(shí)期專業(yè)能力和自身適應(yīng)能力的學(xué)習(xí)。根據(jù)筆者多年的教學(xué),我們引用用了一個(gè)全新的教學(xué)方法—“3W1H”教學(xué)法。在講C語言前和所講的每一節(jié)課都要使學(xué)生明白正門課或者所講的每個(gè)知識(shí)點(diǎn)是什么(WHAT),在哪里能用(WHERE),為什么要這樣用(WHY)和怎么去用(HOW)。從總體的結(jié)構(gòu):程序設(shè)計(jì)語言的3W1H到?jīng)]一點(diǎn)的3W1H,我們?cè)诿恳还?jié)課的過程中都要去給學(xué)生分析、實(shí)踐。另外我們又結(jié)合語言課的特點(diǎn)教會(huì)學(xué)生從C語言的字(字符)、詞(數(shù)據(jù)類型、變量常量)、句(語句)和章(函數(shù)、程序)入手去總結(jié),打亂教材的原有章節(jié),去分析總結(jié),從而大大提高了學(xué)生學(xué)習(xí)的效率。

查看全文

C語言—指針計(jì)算方式

1C語言是目前世界上使用最為廣泛的計(jì)算機(jī)語言之一,目前已經(jīng)成為各大高校主要的計(jì)算機(jī)教學(xué)語言。指針?biāo)惴ㄊ荂語言中的一個(gè)非常重要的概念,由于指針?biāo)惴ǜ拍畋容^復(fù)雜,運(yùn)用非常靈活,比較難掌握,尤其是對(duì)初次涉及計(jì)算機(jī)語言的學(xué)生來說更是如此。本文重點(diǎn)分析C語言指針?biāo)惴▎卧虒W(xué)中的幾個(gè)關(guān)鍵點(diǎn),并探討C語言教學(xué)中應(yīng)該注意的一些問題。指針?biāo)惴ㄖR(shí)單元構(gòu)成

1.1指針?biāo)惴ǘx在計(jì)算機(jī)內(nèi)存中,每一個(gè)存儲(chǔ)單元(通常為1字節(jié))都有一個(gè)固定的編號(hào),就像酒店中的房間號(hào)碼一樣,這個(gè)編號(hào)就稱為地址,相當(dāng)于房間號(hào)。在地址所標(biāo)識(shí)的內(nèi)存單元中存放數(shù)據(jù),這就相當(dāng)于酒店中各個(gè)房間里居住的旅客一樣。

1.2引用指針?biāo)惴ㄗ兞?amp;和*是C語言有關(guān)指針?biāo)惴ǖ膬蓚€(gè)重要運(yùn)算符,分別是取地址運(yùn)算符和指針?biāo)惴ㄟ\(yùn)算符。例如:&x為變量x的地址,*p為指針?biāo)惴ㄗ兞縫所指向的存儲(chǔ)單元。應(yīng)該注意的是在定義時(shí)*只起說明作用,不是運(yùn)算符。比如下面的語句中:floatx=1.5float*P=&xfloat*P=x很多同學(xué)在這里有些迷惑,到底是第2條語句正確還是第3條語句正確呢?根據(jù)指針?biāo)惴ǖ亩x很顯然第2條語句是正確的。迷惑的原因就在把*當(dāng)成了運(yùn)算符。其實(shí),這里的float*共同來修飾P,定義一個(gè)指向浮點(diǎn)型的指針?biāo)惴ㄗ兞?,同時(shí)要將一個(gè)指針?biāo)惴?amp;x賦值給P。為了方便對(duì)存儲(chǔ)單元進(jìn)行控制,我們可以設(shè)置某些變量專門存放指針?biāo)惴?這樣的變量稱為指針?biāo)惴ㄗ兞?。在課堂教學(xué)中,應(yīng)注意使學(xué)生明白內(nèi)存單元地址與內(nèi)存單元內(nèi)容這兩個(gè)概念的區(qū)別,很多初學(xué)者在這個(gè)概念問題上常常弄混淆。

1.3指針?biāo)惴ㄅc數(shù)組

1.3.1指針?biāo)惴ㄅc數(shù)組區(qū)別。在C語言中數(shù)組與指針?biāo)惴ǖ年P(guān)系非常密切,但它們還是有著本質(zhì)上的區(qū)別。指針?biāo)惴梢噪S時(shí)指向任意類型的內(nèi)存單元,它的特征是可變。所以我們常用指針?biāo)惴▉聿僮鲃?dòng)態(tài)內(nèi)存。當(dāng)數(shù)組作為函數(shù)的參數(shù)進(jìn)行傳遞時(shí),該數(shù)組自動(dòng)退化為同類型的指針?biāo)惴?。例?charx[]=chinachar*p=china上述兩個(gè)變量的內(nèi)存布局情況是:數(shù)組x需要在內(nèi)存中占用6個(gè)字節(jié)的空間。這段內(nèi)存區(qū)通過數(shù)組名x來標(biāo)志。指針?biāo)惴≒則需要4個(gè)字節(jié)的空間來存放地址,這4個(gè)字節(jié)用P來標(biāo)志。其中存放的地址幾乎可以指向任何地方,也可以哪里都不指。目前這個(gè)P指向某地連續(xù)的6個(gè)字節(jié)即字符串china。在教學(xué)過程中應(yīng)該注意使學(xué)生能夠正確認(rèn)識(shí)數(shù)組與指針?biāo)惴ǖ膮^(qū)別,并正確運(yùn)用它們。

1.3.2數(shù)組指針?biāo)惴?。?shù)組指針?biāo)惴ǖ膶?shí)質(zhì)是指針?biāo)惴?其定義為:int(*p)[n]表示P為指向由n個(gè)元素組成的一維數(shù)組的指針?biāo)惴ㄗ兞俊<僭O(shè)對(duì)于一個(gè)二維數(shù)組a[2][3],定義一個(gè)指向它的數(shù)組指針?biāo)惴≒,程序如下:inta[2][3]={{l,2,3},{4,5,6}}int(*p)[3]P=aprintf(%d,(*p)[1])p++printf(%d,(*p)[1])在該程序中,初始化數(shù)組指針?biāo)惴≒指向數(shù)組a的首地址,即指向二維數(shù)組的首行,此時(shí),輸出這一行的第1個(gè)元素,即(*p)[1]=2接著,P往下移動(dòng)一個(gè)數(shù)組的寬度,即指向二維數(shù)組的第二行,輸出這一行的第1個(gè)元素,即(*p)[1]=5。

查看全文

C語言實(shí)踐體會(huì)感言

在科技高度發(fā)展的今天,計(jì)算機(jī)在人們之中的作用越來越突出。而c語言作為一種計(jì)算機(jī)的語言,我們學(xué)習(xí)它,有助于我們更好的了解計(jì)算機(jī),與計(jì)算機(jī)進(jìn)行交流,因此,c語言的學(xué)習(xí)對(duì)我們尤其重要。

在這個(gè)星期里,我們專業(yè)的學(xué)生在專業(yè)老師的帶領(lǐng)下進(jìn)行了c語言程序?qū)嵺`學(xué)習(xí)。在這之前,我們已經(jīng)對(duì)c語言這門課程學(xué)習(xí)了一個(gè)學(xué)期,對(duì)其有了一定的了解,但是也僅僅是停留在了解的范圍,對(duì)里面的好多東西還是很陌生,更多的在運(yùn)用起來的時(shí)候還是感到很棘手,畢竟,萬事開頭難嘛。

由于時(shí)間的關(guān)系,我們的這次實(shí)踐課程老師并沒有給我們?cè)敿?xì)的介紹,只是給我們簡(jiǎn)單的介紹了幾個(gè)比較重要的實(shí)際操作。包括了程序模塊處理。簡(jiǎn)單界面程序。高級(jí)界面程序。程序的添加修改。用程序做一元線性回歸處理以及用c語言程序來畫粒度分布圖等這幾樣比較重要的時(shí)間操作。

上機(jī)實(shí)驗(yàn)是學(xué)習(xí)程序設(shè)計(jì)語言必不可少的實(shí)踐環(huán)節(jié),特別是c語言靈活、簡(jiǎn)潔,更需要通過編程的實(shí)踐來真正掌握它。對(duì)于程序設(shè)計(jì)語言的學(xué)習(xí)目的,可以概括為學(xué)習(xí)語法規(guī)定、掌握程序設(shè)計(jì)方法、提高程序開發(fā)能力,這些都必須通過充分的實(shí)際上機(jī)操作才能完成。

學(xué)習(xí)c程序設(shè)計(jì)語言除了課堂講授以外,必須保證有不少于課堂講授學(xué)時(shí)的上機(jī)時(shí)間。因?yàn)閷W(xué)時(shí)所限,課程不能安排過多的統(tǒng)一上機(jī)實(shí)驗(yàn),所以希望學(xué)生有效地利用課程上機(jī)實(shí)驗(yàn)的機(jī)會(huì),盡快掌握用c語言開發(fā)程序的能力,為今后的繼續(xù)學(xué)習(xí)打下一個(gè)良好的基礎(chǔ)。為此,我們結(jié)合課堂講授的內(nèi)容和進(jìn)度,安排了12次上機(jī)實(shí)驗(yàn)。課程上機(jī)實(shí)驗(yàn)的目的,不僅僅是驗(yàn)證教材和講課的內(nèi)容、檢查自己所編的程序是否正確,課程安排的上機(jī)實(shí)驗(yàn)的目的可以概括為如下幾個(gè)方面:

1.加深對(duì)課堂講授內(nèi)容的理解

查看全文

C語言課程設(shè)計(jì)教學(xué)探究

一、傳統(tǒng)C語言課程設(shè)計(jì)教學(xué)模式

C語言是最基本的計(jì)算機(jī)編程,是計(jì)算機(jī)、電子信息類等相關(guān)專業(yè)學(xué)生的專業(yè)入門課,在其學(xué)習(xí)過程中,要求必須掌握編程的技能。但是C語言的學(xué)習(xí)有其特點(diǎn),規(guī)則比較多、知識(shí)點(diǎn)多,涉及到的編程程序等也比較難懂,在運(yùn)行上代碼的要求較高,程序執(zhí)行效率高,因此更講究教學(xué)和學(xué)習(xí)的方式方法,但是在我們的教學(xué)中,目前教學(xué)方法比較單一,隨著信息化的發(fā)展,傳統(tǒng)的教學(xué)模式已經(jīng)無法適應(yīng),亟需改革。

1、傳統(tǒng)型

這種教學(xué)模式,也是最常用的,課堂上以老師為主,學(xué)生只能被動(dòng)的接受知識(shí)的傳授。通過最直接“填鴨”式照本宣科,不管學(xué)生接受與否,最后的考核也是以知識(shí)點(diǎn)的記住與否,造成學(xué)生死記硬背,不能真正掌握知識(shí)。其基本模式為:學(xué)習(xí)——回答——糾錯(cuò)——總結(jié)。這種模式下,使得教師在教材以外的發(fā)揮余地極小,基本是“照本宣科”,強(qiáng)行灌輸C語言的概念、特點(diǎn)、編程程序、基本的方法等,整個(gè)教學(xué)過程缺乏靈活機(jī)動(dòng)、具有啟發(fā)性的內(nèi)容,學(xué)生被動(dòng)的接受知識(shí)、被動(dòng)的記憶、被檢查、被考試、被批評(píng)等,日復(fù)一日的教條式訓(xùn)練,不能有效地激發(fā)學(xué)生的主觀能動(dòng)性與創(chuàng)造熱情。

2、任務(wù)型

C語言教學(xué)區(qū)別于其他學(xué)科,在理論知識(shí)的傳授之外,還需要培養(yǎng)學(xué)生的實(shí)際動(dòng)手能力,因此,很多學(xué)校也采用“任務(wù)型”教學(xué)模式,基本模式為:根據(jù)具體要求提出任務(wù)—鼓勵(lì)學(xué)生設(shè)計(jì)方案—實(shí)際操作—解決任務(wù)。在日常的教學(xué)中,學(xué)校大多會(huì)利用電腦等鍛煉學(xué)生的實(shí)際動(dòng)手能力,利用實(shí)際操作,鍛煉編程、邏輯等能力,從而掌握C語言的基本知識(shí)。例如翻轉(zhuǎn)課堂模式,教師將知識(shí)傳授環(huán)節(jié)制作成教學(xué)微課,課前提供給學(xué)生預(yù)習(xí),通過預(yù)習(xí)使課堂的實(shí)踐性練習(xí)目的性更明確,教師隨堂對(duì)學(xué)生遇到問題進(jìn)行指導(dǎo)分析,從而培養(yǎng)學(xué)生獨(dú)立思考能力和實(shí)際操作能力。這種模式的采用,相對(duì)于傳統(tǒng)模式,有其進(jìn)步性,這也是C語言等專業(yè)性、操作性學(xué)科區(qū)別于其他學(xué)科的特點(diǎn)決定的,在這種模式下更取決于教師自身的素質(zhì)、知識(shí)、能力等,是整個(gè)課程的掌控者、引導(dǎo)者,他們的能力直接關(guān)系著教學(xué)成果。

查看全文

C語言for循環(huán)語句教學(xué)設(shè)計(jì)

摘要:for循環(huán)語句是C語言三種循環(huán)語句中使用頻率最高,最為靈活的一種循環(huán)。掌握for循環(huán)語句對(duì)學(xué)生編程技能的提高具有重要意義。本文從教學(xué)背景、微課件特色、教學(xué)目標(biāo),教學(xué)內(nèi)容等方面著眼,對(duì)C語言之for循環(huán)語句,進(jìn)行教學(xué)設(shè)計(jì)。希望學(xué)生能夠較好的掌握for循環(huán)語句的相關(guān)知識(shí),在實(shí)際應(yīng)用中游刃有余。

關(guān)鍵詞:程序設(shè)計(jì)基礎(chǔ);for語句;循環(huán)

循環(huán)結(jié)構(gòu)是C程序的三大結(jié)構(gòu)之一,是程序設(shè)計(jì)的基礎(chǔ)。其循環(huán)包括whie循環(huán)、dowhile循環(huán)和for循環(huán),三種循環(huán)之間可以互相轉(zhuǎn)換。其中for循環(huán)語句使用最為靈活,不僅可以用于循環(huán)次數(shù)可以確定的情況,而且可以用于循環(huán)次數(shù)不確定,只給出循環(huán)結(jié)束條件的情況,它完全可以代替while語句。學(xué)生只有熟練掌握了循環(huán)語句的語句格式,理解循環(huán)執(zhí)行過程,才能在實(shí)際應(yīng)用中游刃有余。

1教學(xué)背景

循環(huán)結(jié)構(gòu)是C程序的三大結(jié)構(gòu)之一,是程序設(shè)計(jì)的基礎(chǔ)。C語言提供了三種循環(huán)控制語句(不考慮goto/if構(gòu)成的循環(huán)),構(gòu)成了三種基本的循環(huán)結(jié)構(gòu)。(1)while語句構(gòu)成的循環(huán)結(jié)構(gòu)(“當(dāng)型循環(huán)”)(2)do-while語句構(gòu)成的循環(huán)結(jié)構(gòu)(“直到型循環(huán)”)(3)for語句構(gòu)成的循環(huán)結(jié)構(gòu)(“當(dāng)型循環(huán)”)我們本次教學(xué)是學(xué)生在學(xué)習(xí)了while語句構(gòu)成的循環(huán)結(jié)構(gòu)(“當(dāng)型循環(huán)”)和do-while語句構(gòu)成的循環(huán)結(jié)構(gòu)(“直到型循環(huán)”)之后進(jìn)行開展的。并在課前做了相關(guān)的微課視頻,讓學(xué)生提前預(yù)習(xí)。

2微課件特色

查看全文