国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

芻議游戲編程在C語(yǔ)言教學(xué)中的一點(diǎn)應(yīng)用

2016-10-21 07:03張祎
電子技術(shù)與軟件工程 2016年5期
關(guān)鍵詞:應(yīng)用分析

張祎

摘 要 C語(yǔ)言是計(jì)算機(jī)專業(yè)的一門專業(yè)基礎(chǔ)課,對(duì)于學(xué)生編程能力的培養(yǎng)具有十分重要的意義。而由于編程類課程具有難度較大、較為枯燥的特點(diǎn),學(xué)生在學(xué)習(xí)中往往會(huì)出現(xiàn)缺乏興趣的情況,并因此使學(xué)習(xí)效果受到較大的影響。對(duì)此,就需要開創(chuàng)新穎的教學(xué)方式,提高學(xué)生的學(xué)習(xí)興趣。在本文中,將就游戲編程在C語(yǔ)言教學(xué)中的應(yīng)用進(jìn)行一定的分析。

【關(guān)鍵詞】游戲編程 C語(yǔ)言教學(xué) 應(yīng)用分析

1 引言

在計(jì)算機(jī)課程的教學(xué)中,C語(yǔ)言是一門非常重要的編程類基礎(chǔ)課程,但在實(shí)際教學(xué)中,卻經(jīng)常能夠聽到學(xué)生對(duì)該門課程的抱怨,感覺知識(shí)枯燥、難學(xué)等。如何解決這個(gè)問(wèn)題呢?我們都知道,C語(yǔ)言是一門具有較強(qiáng)實(shí)踐性的課程,如果教師更多的強(qiáng)調(diào)理論教學(xué),那么不僅很難使學(xué)生對(duì)理論知識(shí)產(chǎn)生更深的印象、不能夠?qū)⒗碚撝R(shí)轉(zhuǎn)化為實(shí)踐經(jīng)驗(yàn),對(duì)于學(xué)生的學(xué)習(xí)興趣也有比較大的影響。將學(xué)生對(duì)C語(yǔ)言的學(xué)習(xí)興趣進(jìn)行最大程度的激發(fā),成為了非常重要的一項(xiàng)教學(xué)目標(biāo)。

在此情況下,教師可以充分結(jié)合C語(yǔ)言的特點(diǎn),通過(guò)將游戲編程引入課堂教學(xué),將C語(yǔ)言這門課程同“玩”之間建立聯(lián)系,既能幫助學(xué)生對(duì)程序編寫產(chǎn)生興趣、積極投入的同時(shí)又能掌握相關(guān)的知識(shí)。對(duì)此,我們以較為簡(jiǎn)單的“猜數(shù)字”游戲?yàn)槔龑?duì)游戲編程在C語(yǔ)言教學(xué)中的應(yīng)用進(jìn)行簡(jiǎn)單的分析。

2 游戲編程在C語(yǔ)言教學(xué)中的應(yīng)用

在游戲編程之前,需要先對(duì)“猜數(shù)字”這個(gè)游戲的規(guī)則做好整理與掌握:

(1)在進(jìn)入到游戲之后,系統(tǒng)會(huì)以隨機(jī)的方式生成4個(gè)0~9間的數(shù)字;

(2)玩家任意輸入0~9之間的4個(gè)數(shù)字;

(3)系統(tǒng)將玩家所輸入的數(shù)字同系統(tǒng)之前生成的數(shù)字進(jìn)行比對(duì)、判斷,以字母A對(duì)位置、數(shù)值都正確的數(shù)字個(gè)數(shù)進(jìn)行表示,以字母B對(duì)位置不正確、但數(shù)值正確的數(shù)字個(gè)數(shù)進(jìn)行表示,如反饋信息為4A0B,那么則表明玩家所猜的四個(gè)數(shù)字全對(duì),游戲成功,否則本次游戲失敗。

本游戲具體實(shí)現(xiàn)過(guò)程分析如下:

2.1 系統(tǒng)隨機(jī)數(shù)生成

要想對(duì)游戲中的4個(gè)隨機(jī)數(shù)進(jìn)行生成,則需要使用到隨機(jī)函數(shù)random。對(duì)此,教師可以先將該函數(shù)的作用以及使用方法向?qū)W生進(jìn)行簡(jiǎn)單的講解,也并不需要非常深入,僅僅使學(xué)生能夠掌握10以內(nèi)隨機(jī)數(shù)的生成即可。為了便于后續(xù)的比較,這4個(gè)隨機(jī)數(shù)則需要在生成后放在一個(gè)數(shù)組當(dāng)中,本例中我們以a作為存放4個(gè)隨機(jī)數(shù)的數(shù)組名。生成隨機(jī)數(shù)的代碼為:

for(i=0;i<4;i++)

a[i]=random(10);

2.2 隨機(jī)數(shù)不重復(fù)的控制

要想使系統(tǒng)所生成的隨機(jī)數(shù)具有不重復(fù)的特點(diǎn),教師可以先安排學(xué)生共同進(jìn)行討論,并在討論的過(guò)程中適當(dāng)給予一定的提示:對(duì)于系統(tǒng)生成的這幾個(gè)隨機(jī)數(shù)來(lái)說(shuō),其值是不可控的,即在生成時(shí)我們無(wú)法做好數(shù)字重復(fù)性的控制。但在生成之后,我們則可以通過(guò)一定編程技巧的應(yīng)用來(lái)選擇使用或者不使用這幾個(gè)隨機(jī)數(shù)。當(dāng)教師提到此處時(shí),部分較為敏銳的學(xué)生則能夠發(fā)現(xiàn)功能實(shí)現(xiàn)的要點(diǎn),即將剛才生成隨機(jī)數(shù)的代碼段放入do……while結(jié)構(gòu)中,如果經(jīng)過(guò)判斷發(fā)現(xiàn)這4個(gè)隨機(jī)數(shù)中具有重復(fù)情況,則需要通過(guò)循環(huán),重新生成4個(gè)隨機(jī)數(shù)并進(jìn)行再次判斷,直到這4個(gè)隨機(jī)數(shù)互相之間不再重復(fù)。

那do……while結(jié)構(gòu)的循環(huán)判斷條件又是什么呢?此時(shí),教師則可以對(duì)學(xué)生進(jìn)行適當(dāng)?shù)奶崾荆喝绾螌?duì)2個(gè)數(shù)字間是否存在重復(fù)情況進(jìn)行判斷?如何對(duì)3個(gè)以及4個(gè)數(shù)據(jù)間是否存在重復(fù)進(jìn)行判斷?因此,本游戲中不相同數(shù)字生成的循環(huán)判斷條件可寫為:

a[0]==a[1]||a[0]==a[2]||a[0]==a[3]||a[1]==a[2]||a[1]==a[3]||a[2]==a[3]

此時(shí),該游戲的“系統(tǒng)生成0-9間隨機(jī)數(shù)字、且這4個(gè)數(shù)字互不相同”的部分已經(jīng)編寫完畢。

2.3 用戶輸入數(shù)據(jù)判斷

我們用數(shù)組b存放用戶任意輸入的4個(gè)數(shù)。根據(jù)游戲規(guī)則,在本游戲中共具有兩種反饋信息,即a同b中位置與數(shù)值都相同元素的個(gè)數(shù),使用字母A表示;另一種則為a同b中數(shù)值相同、但位置不同元素的個(gè)數(shù),使用字母B表示。為了保證程序在實(shí)際應(yīng)用中能夠正確運(yùn)行,則需要通過(guò)循環(huán)結(jié)構(gòu)的應(yīng)用對(duì)該種統(tǒng)計(jì)目標(biāo)進(jìn)行實(shí)現(xiàn)。首先,需要對(duì)A的統(tǒng)計(jì)情況進(jìn)行研究。由于已知兩個(gè)數(shù)組A與B具有相同的元素個(gè)數(shù),且在2個(gè)數(shù)組中序號(hào)相同的元素間有對(duì)應(yīng)關(guān)系。對(duì)此,根據(jù)游戲規(guī)則,只要將這兩組數(shù)字中具有相同位置的元素進(jìn)行比較即可,其代碼為:

int A=0;

for(i=0;i<4;i++){

if(a[i]==b[i])

A + + ;

}

而最終A的值就是a與b兩個(gè)數(shù)組中位置相同且數(shù)值也相同元素的個(gè)數(shù)。

之后,則需要對(duì)B進(jìn)行統(tǒng)計(jì)。同A相比,對(duì)B進(jìn)行統(tǒng)計(jì)相對(duì)麻煩一些。在對(duì)該值進(jìn)行求解時(shí),需要涉及到兩個(gè)問(wèn)題:第一,需要將a中元素同b數(shù)組中的每一個(gè)元素都逐個(gè)進(jìn)行比較;第二,在經(jīng)過(guò)第一輪比較后、如果發(fā)現(xiàn)兩個(gè)元素具有相等的值,則需要進(jìn)一步對(duì)其在數(shù)組中的位置進(jìn)行比較,看位置是否不相同。只有當(dāng)上述兩個(gè)條件都得到滿足之后,才能夠?qū)τ螒蛑小皵?shù)值正確、位置不正確”的概念進(jìn)行體現(xiàn)。在對(duì)B值進(jìn)行統(tǒng)計(jì)時(shí),由于需要對(duì)數(shù)組中的不同元素以逐個(gè)的方式進(jìn)行比較,則需要對(duì)雙重循環(huán)進(jìn)行應(yīng)用,其代碼為:

int B=0;

for(i=0;i<4;i++){

for(j=0;j<4;j++)

if((a[i]==b[i])&&(i!=j))

B + + ;

}

最終獲得的B值就是a同b相比具有相同數(shù)值、但位置不相同元素的個(gè)數(shù)。

該游戲在知識(shí)點(diǎn)方面涉及到C語(yǔ)言的選擇、循環(huán)以及數(shù)組等,難度不大,非常適合C語(yǔ)言的初學(xué)者進(jìn)行編寫。

3 結(jié)束語(yǔ)

C語(yǔ)言是計(jì)算機(jī)教學(xué)中非常重要的一門基礎(chǔ)課程,對(duì)于學(xué)生的編程能力培養(yǎng)具有十分積極的意義,而在現(xiàn)今學(xué)生實(shí)際學(xué)習(xí)中感覺枯燥、缺乏學(xué)習(xí)興趣的情況下,以游戲編程方式進(jìn)行教學(xué)則是非常有效的一種方式。在上文中,我們雖然只是以一個(gè)猜數(shù)的小游戲?yàn)槔龑?duì)游戲編程在C語(yǔ)言教學(xué)中的應(yīng)用進(jìn)行了分析,但只要在實(shí)際教學(xué)中我們能夠?qū)⒋朔绞酵贫鴱V之,靈活運(yùn)用,就可獲得更好的教學(xué)效果。

參考文獻(xiàn)

[1]王鵬.C語(yǔ)言語(yǔ)言教學(xué)的游戲方法探析[J].中國(guó)科教創(chuàng)新導(dǎo)刊,2013(23):174-174.

[2]彭三城.案例教學(xué)方法在C語(yǔ)言語(yǔ)言教學(xué)中的應(yīng)用研究[J].肇慶學(xué)院學(xué)報(bào),2013(02):17-21.

[3]周小云.C語(yǔ)言的快樂(lè)教學(xué)之旅[J].課程教育研究,2013(02):156-156.

[4]倪建新.基于C語(yǔ)言的游戲開發(fā)教學(xué)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2012(35):102-103.

作者單位

雅安職業(yè)技術(shù)學(xué)院 四川省雅安市 625000

猜你喜歡
應(yīng)用分析
互聯(lián)網(wǎng)技術(shù)在廣播電視領(lǐng)域的應(yīng)用與探究
綠色建筑煤矸石資源化利用新技術(shù)的應(yīng)用分析
快樂(lè)教學(xué)法在提高少兒羽毛球啟蒙教學(xué)中的應(yīng)用分析
試析翻譯理論在翻譯實(shí)踐中的應(yīng)用
綠色化學(xué)理念下的初中化學(xué)教學(xué)探究
計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)及在實(shí)踐中的應(yīng)用分析(1)
試析機(jī)電一體化系統(tǒng)在機(jī)械工程中的應(yīng)用
新型傳感器在汽車技術(shù)中的應(yīng)用分析
交互設(shè)計(jì)在工業(yè)設(shè)計(jì)中的應(yīng)用分析