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

?

基于迷宮項(xiàng)目的C語(yǔ)言編程能力分析與高職教學(xué)實(shí)踐*

2021-03-17 14:51:00
關(guān)鍵詞:C語(yǔ)言迷宮編程

顧 明

(深圳職業(yè)技術(shù)學(xué)院 人工智能學(xué)院,廣東 深圳 518055)

C語(yǔ)言是很多國(guó)內(nèi)高職院校開(kāi)設(shè)的一門(mén)編程類(lèi)的基礎(chǔ)課,把C語(yǔ)言編程作為學(xué)生的第一門(mén)編程課,對(duì)于基本沒(méi)有接觸過(guò)計(jì)算機(jī)編程的大部分高職學(xué)生來(lái)講,C語(yǔ)言編程課程對(duì)學(xué)生的學(xué)習(xí)和教師的講授都有一定難度.C語(yǔ)言教學(xué)目前的主要現(xiàn)狀和問(wèn)題可以歸納為 3個(gè)方面[1-2].首先,C語(yǔ)言知識(shí)體系本身有一定的復(fù)雜度和難度,C語(yǔ)言知識(shí)體系的信息容量較大,如語(yǔ)言概念和語(yǔ)法規(guī)則、程序結(jié)構(gòu)和用戶(hù)界面、數(shù)據(jù)結(jié)構(gòu)和數(shù)學(xué)算法等等.其次,作為教學(xué)對(duì)象的高職學(xué)生,他們的基礎(chǔ)理論知識(shí)相對(duì)薄弱,同時(shí)抽象能力和邏輯思維能力相對(duì)缺乏,學(xué)習(xí)的主動(dòng)性和積極性不高.這些自身因素導(dǎo)致他們?nèi)狈?duì)學(xué)到的知識(shí)進(jìn)行深入探究,不能融會(huì)貫通.最后,就是C語(yǔ)言的高職教學(xué)模式,目前大部分高職院校針對(duì)計(jì)算機(jī)編程課程設(shè)立了多媒體實(shí)訓(xùn)室,多媒體實(shí)訓(xùn)室的主要功能是承擔(dān)計(jì)算機(jī)公共課和專(zhuān)業(yè)課的訓(xùn)練,這種模式雖然為學(xué)生們上機(jī)操作創(chuàng)造了條件,但上機(jī)實(shí)訓(xùn)并不是隨時(shí)可以的,只是在規(guī)定的上課時(shí)間或課外時(shí)間.而且,在教學(xué)實(shí)施上并沒(méi)有擺脫教師講授為主的教學(xué)過(guò)程,缺乏真正的以學(xué)生為主體的教學(xué)模式,也沒(méi)有給學(xué)生發(fā)揮主觀能動(dòng)性的時(shí)空保障和任務(wù)牽引,同時(shí)又缺乏有效的教學(xué)手段,充分調(diào)動(dòng)起學(xué)生的學(xué)習(xí)主動(dòng)性的積極性.因此,對(duì)高職C語(yǔ)言編程課程教學(xué)模式的探討[3-6],一直都是一個(gè)受到關(guān)注的研究課題.

本文對(duì)C語(yǔ)言的知識(shí)點(diǎn)進(jìn)行了分解[7-8],從多個(gè)方面對(duì) C語(yǔ)言編程能力進(jìn)行了分析.在此基礎(chǔ)上,提出了項(xiàng)目牽引的C語(yǔ)言教學(xué)模式,選擇了一個(gè)既能覆蓋C語(yǔ)言知識(shí)點(diǎn)又能體現(xiàn)C語(yǔ)言編程能力,同時(shí)又能像游戲軟件一樣,能引起學(xué)生學(xué)習(xí)興趣的迷宮項(xiàng)目,以該項(xiàng)目作為學(xué)習(xí)C語(yǔ)言知識(shí)體系的任務(wù)牽引,結(jié)合課中和課后的學(xué)習(xí),線(xiàn)上和線(xiàn)下的時(shí)空保障,充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)熱情,在完成項(xiàng)目的同時(shí),掌握C語(yǔ)言的編程知識(shí)點(diǎn).

1 C語(yǔ)言的知識(shí)點(diǎn)分解和編程能力分析

1.1 C語(yǔ)言的知識(shí)點(diǎn)分解

根據(jù)高職教育的培養(yǎng)目標(biāo)和企業(yè)崗位對(duì)程序員及其相關(guān)專(zhuān)業(yè)人員的就業(yè)需求,再結(jié)合計(jì)算機(jī)C語(yǔ)言編程課程的教學(xué)要求,我們對(duì)C語(yǔ)言的知識(shí)點(diǎn)進(jìn)行了分類(lèi)的歸納總結(jié),把C語(yǔ)言的知識(shí)點(diǎn)分解成5個(gè)方面,見(jiàn)表1.

表1 C語(yǔ)言知識(shí)點(diǎn)分解

1.2 C語(yǔ)言編程能力分析

1.2.1 抽象的能力

計(jì)算機(jī)在任何情況下都是人類(lèi)勞動(dòng),包括思維、活動(dòng)、控制等的一種替代工具.因此計(jì)算機(jī)編程的目的是獲取原來(lái)人工系統(tǒng)的方案,然后計(jì)算機(jī)化,按用戶(hù)指定的工作方式來(lái)實(shí)現(xiàn)在計(jì)算機(jī)上工作.因此,抽象來(lái)自3個(gè)方面,首先要抽象仿真現(xiàn)實(shí)人工系統(tǒng)以構(gòu)成抽象的人工系統(tǒng),例如,C語(yǔ)言中的函數(shù)就是客觀系統(tǒng)中一種行為或動(dòng)作的抽象.其次,從抽象的人工系統(tǒng)映射到計(jì)算機(jī)軟件系統(tǒng)也是一種抽象,再后,根據(jù)計(jì)算機(jī)軟件系統(tǒng)的復(fù)雜性,確定是否需要進(jìn)行架構(gòu)設(shè)計(jì)等,最后用計(jì)算機(jī)編程語(yǔ)言實(shí)現(xiàn)計(jì)算機(jī)軟件系統(tǒng).如圖1所示.

圖1 抽象的體現(xiàn)

C語(yǔ)言是實(shí)現(xiàn)計(jì)算機(jī)軟件系統(tǒng)中常用的一種語(yǔ)言,可以直接使用C語(yǔ)言編寫(xiě)計(jì)算機(jī)軟件系統(tǒng).首先,需要分析人工系統(tǒng)解決問(wèn)題的步驟,再映射到C語(yǔ)言編程解決問(wèn)題的處理流程,最后找出對(duì)應(yīng)關(guān)系.如圖2所示.

圖2 人工系統(tǒng)和C語(yǔ)言編程系統(tǒng)的操作步驟分解和映射關(guān)系

1.2.2 邏輯思維的能力

邏輯思維的能力是采用科學(xué)的思維方式,對(duì)事物進(jìn)行觀察、比較、分析、綜合、抽象、概括、判斷和推理等后,準(zhǔn)確而有條理地表達(dá)自己的思維過(guò)程的能力.

邏輯思維能力是表現(xiàn)在C語(yǔ)言編程的整個(gè)過(guò)程中的,即:從抽象、需求獲取和分析,到算法設(shè)計(jì)、數(shù)據(jù)和操作設(shè)計(jì)和用戶(hù)界面設(shè)計(jì).對(duì)沒(méi)有接觸過(guò)計(jì)算機(jī)編程思維訓(xùn)練的學(xué)生來(lái)講,可以?xún)?yōu)先選擇C語(yǔ)言來(lái)訓(xùn)練計(jì)算機(jī)編程的邏輯思維能力.

在 C語(yǔ)言中,數(shù)據(jù)處理流程有三種基本結(jié)構(gòu),即:順序、條件和循環(huán).人工系統(tǒng)的邏輯思維過(guò)程需要被映射成為C語(yǔ)言中的三種基本控制結(jié)構(gòu),如圖3所示.因此,在學(xué)習(xí)C語(yǔ)言3種基本結(jié)構(gòu)時(shí),我們要注重培養(yǎng)學(xué)生將人的邏輯思維過(guò)程用C語(yǔ)言3種基本結(jié)構(gòu)表現(xiàn)的編程方法.

圖3 邏輯思維過(guò)程在C語(yǔ)言中的體現(xiàn)

例如,在C語(yǔ)言中劃分條件語(yǔ)句的判斷范圍,就需要一定的邏輯思維合理性,否則,程序的語(yǔ)法沒(méi)有錯(cuò),但運(yùn)行結(jié)果在某些條件下就達(dá)不到用戶(hù)的預(yù)期結(jié)果.

假設(shè)希望成績(jī)80分以上是B,90分以上是A,C語(yǔ)言程序代碼片段如下:

某同學(xué)有分?jǐn)?shù) 95,按照以上程序,mark取值是‘B’,并不是我們希望的‘A’.這是因?yàn)閮蓚€(gè)區(qū)間的劃分沒(méi)有互斥,是有重疊的.這屬于編程邏輯思維能力培養(yǎng)的范疇.

再例如,對(duì)于循環(huán)語(yǔ)句,在設(shè)計(jì)循環(huán)初值、終值、步長(zhǎng)值時(shí),要注意循環(huán)初值在步長(zhǎng)值的作用下,一定要達(dá)到并超過(guò)循環(huán)終值,這樣才能保證循環(huán)的出口.這也是編程邏輯思維的一種體現(xiàn),否則,就會(huì)形成死循環(huán).當(dāng)然,也可以設(shè)計(jì)成永真循環(huán),用break語(yǔ)句跳出循環(huán),這也是循環(huán)語(yǔ)句另一種邏輯思維方式的體現(xiàn).

1.2.3 需求獲取和分析的能力

計(jì)算機(jī)編程的目的是發(fā)揮計(jì)算機(jī)運(yùn)算速度快,重復(fù)工作不會(huì)疲勞出錯(cuò)等優(yōu)點(diǎn),來(lái)替代現(xiàn)有的人工系統(tǒng).因此,先要獲取人工系統(tǒng)是如何完成任務(wù)的模型,哪些需求是需要的,哪些是不需要的,這主要是涉及到計(jì)算機(jī)編程需要的數(shù)據(jù)篩選和提?。鐖D4所示.

圖4 編程需求的獲取和分析

例如,要計(jì)算機(jī)編程實(shí)現(xiàn)學(xué)生成績(jī)信息統(tǒng)計(jì)系統(tǒng),我們需要學(xué)生的學(xué)號(hào)、姓名、班級(jí)、課程名稱(chēng)等信息,但并不需要學(xué)生的視力、體重、身高等健康數(shù)據(jù).我們除了要確定現(xiàn)實(shí)世界的某個(gè)對(duì)象自身有關(guān)的屬性,在編程時(shí)的取舍信息外,還要分析需要的信息在計(jì)算機(jī)編程時(shí),用該語(yǔ)言的哪種數(shù)據(jù)組織方式表示.如在C語(yǔ)言中,學(xué)號(hào)是表示成整數(shù)類(lèi)型,還是字符串類(lèi)型,經(jīng)過(guò)分析后發(fā)現(xiàn),還是字符串類(lèi)型比較好,因?yàn)閷W(xué)號(hào)中也可能出現(xiàn)數(shù)字以外的其它字符.

1.2.4 算法設(shè)計(jì)的能力

算法是為解決一個(gè)問(wèn)題而采取的方法和步驟,算法具有:有窮性、確切性、輸入項(xiàng)、輸出項(xiàng)和可行性.用C語(yǔ)言編程,算法設(shè)計(jì)的能力培養(yǎng)是很重要的,人工系統(tǒng)中的思考問(wèn)題方式不同于計(jì)算機(jī)中的算法設(shè)計(jì).例如:要實(shí)現(xiàn)在一群人中找到身高最高的人,人工系統(tǒng)可以讓所有人站在一排,用眼睛一看就知道誰(shuí)最高.但計(jì)算機(jī)編程就需要設(shè)計(jì)一個(gè)算法來(lái)解決這個(gè)問(wèn)題,首先,測(cè)量每個(gè)人的身高數(shù)據(jù),然后,按照如圖5所示的算法,依據(jù)1,2,3的有窮步驟,找出最高的人.

圖5 尋找最高身高的算法設(shè)計(jì)

算法設(shè)計(jì)的是否合理和優(yōu)秀,直接關(guān)系到C語(yǔ)言程序能否正確執(zhí)行和執(zhí)行的效率.

1.2.5 數(shù)據(jù)和操作設(shè)計(jì)的能力

在C語(yǔ)言的編程中,首先要區(qū)分?jǐn)?shù)據(jù)和在數(shù)據(jù)上的操作,要考慮需要哪些數(shù)據(jù),每種數(shù)據(jù)用C語(yǔ)言中的什么數(shù)據(jù)組織方式來(lái)表示,對(duì)數(shù)據(jù)的操作要設(shè)計(jì)多少個(gè)函數(shù),函數(shù)之間的調(diào)用關(guān)系如何安排等.例如,延續(xù)以上尋找最高身高的例子,可以按照如圖6設(shè)計(jì)數(shù)據(jù)和操作的函數(shù)關(guān)系.

圖6 尋找最高身高的數(shù)據(jù)和操作設(shè)計(jì)

1.2.6 用戶(hù)界面設(shè)計(jì)能力

用戶(hù)界面的設(shè)計(jì)方法和工具有很多,僅僅用C語(yǔ)言還不能設(shè)計(jì)出可視化 windows的用戶(hù)界面,但C語(yǔ)言編程也是需要設(shè)計(jì)用戶(hù)界面的,在C編程中,要考慮用C語(yǔ)言可以直接實(shí)現(xiàn)的方式,設(shè)計(jì)比較友好和實(shí)用的用戶(hù)界面.

輸入數(shù)據(jù)的用戶(hù)界面方式:

● 從文件讀入數(shù)據(jù);

● C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)直接從鍵盤(pán)交互獲取數(shù)據(jù);

● 設(shè)計(jì)菜單選擇方式.

輸出數(shù)據(jù)的用戶(hù)界面方式:

● 把程序運(yùn)行結(jié)果放入磁盤(pán)文件;

● 用C語(yǔ)言的標(biāo)準(zhǔn)庫(kù)函數(shù)直接打印運(yùn)行結(jié)果到屏幕上,這種方式比較常用;

● 設(shè)計(jì)菜單選擇,然后打印該菜單對(duì)應(yīng)的運(yùn)行結(jié)果到屏幕上.

2 迷宮項(xiàng)目

2.1 項(xiàng)目需求

項(xiàng)目需求的自然語(yǔ)言描述如下:該項(xiàng)目是一個(gè)正方形的二維平面的迷宮,可以指定起點(diǎn),出口點(diǎn)在迷宮二維平面圖最右邊的一條邊上,最右邊的一條邊上可以有多個(gè)出口點(diǎn),但出口點(diǎn)必須是在迷宮圖最右邊的一條邊上.迷宮內(nèi)有通路,也有墻等各類(lèi)障礙物,有障礙物就意味著不能通過(guò).經(jīng)過(guò)每一段路都要有一定的花費(fèi),花費(fèi)可以是錢(qián)和體力消耗等.從入口到出口,只要有一段路遇到墻或障礙物,就不算是通路.只有從起點(diǎn)到出口的所有的路上都沒(méi)有墻或障礙物,就算是找到了一條通路.從起點(diǎn)到出口,如果找到的2條通路,只要有一段路不同,就算是不同的通路.起點(diǎn)可以由用戶(hù)指定.當(dāng)指定在起點(diǎn)后,有可能沒(méi)有找到一條從該起點(diǎn)到出口的通路,這時(shí)的通路數(shù)量就是0.

該項(xiàng)目需要在迷宮中找到如下的信息:

● 從入口到出口的所有通路,即從指定的起點(diǎn)到任何一個(gè)出口沒(méi)有遇到墻或障礙物的路徑;

● 迷宮的通路數(shù)量,即不同的通路個(gè)數(shù);

● 最短的通路,即從起點(diǎn)到出口的路徑總長(zhǎng)度最短的通路;

● 最便宜的通路,即從起點(diǎn)到出口點(diǎn)路徑總長(zhǎng)度上花費(fèi)(錢(qián)或體力)最小的通路;

● 最便宜的通路的花費(fèi)總數(shù).

2.2 迷宮的二維抽象表示

根據(jù)用自然語(yǔ)言描述的迷宮需求,我們經(jīng)過(guò)需求的獲取和分析,需要抽象出一個(gè)能用計(jì)算機(jī)編程語(yǔ)言實(shí)現(xiàn)的數(shù)學(xué)模型.把一段路徑用一個(gè)點(diǎn)表示,點(diǎn)上的數(shù)字表示經(jīng)過(guò)這一段路徑的花費(fèi),我們把花費(fèi)用0-9的數(shù)字等級(jí)表示,數(shù)字越大,花費(fèi)越多,最小花費(fèi)是0,最大花費(fèi)是9.點(diǎn)上有*表示是墻或障礙物,意味著該段路徑不能通過(guò).因?yàn)槊詫m是正方形,該數(shù)學(xué)模型表示成(n*n)方陣,該方陣是由數(shù)字和*組成,共n行,每行n列.給定一個(gè)起點(diǎn),如果能找到一條從起點(diǎn)到最右邊列的某個(gè)數(shù)字組成的數(shù)字串,就是存在一條通路.不同的數(shù)字串組成不同的通路.統(tǒng)計(jì)迷宮的通路數(shù)量時(shí),只需統(tǒng)計(jì)不同的數(shù)字串的個(gè)數(shù)即可.最短的通路表示數(shù)字串中的數(shù)字個(gè)數(shù)最少,最便宜的路徑表示某通路的數(shù)字串上數(shù)字的總和最小,最便宜的路徑的花費(fèi)總數(shù)就是最便宜的路徑上的數(shù)字總和.例如:圖7表示由5*5組成的迷宮方陣,如果起點(diǎn)選擇為左上角的1,出口是在最右邊的列上,共有4個(gè)出口點(diǎn),每個(gè)點(diǎn)上都是1.

圖7 迷宮5*5方陣

在迷宮項(xiàng)目需求轉(zhuǎn)換為n*n的數(shù)學(xué)模型點(diǎn)方陣過(guò)程中,體現(xiàn)了對(duì)抽象能力和邏輯思維能力的需求.

2.3 算法設(shè)計(jì)的實(shí)現(xiàn)

迷宮的算法設(shè)計(jì)思想如圖8所示.

圖8 迷宮項(xiàng)目的算法設(shè)計(jì)

2.4 數(shù)據(jù)和操作設(shè)計(jì)實(shí)現(xiàn)

迷宮項(xiàng)目的程序覆蓋了C語(yǔ)言編程的數(shù)據(jù)組織方式.

例如,把迷宮點(diǎn)方陣存貯在一個(gè)雙指針的自定義類(lèi)型結(jié)構(gòu)中.迷宮項(xiàng)目的操作設(shè)計(jì)是一個(gè)主函數(shù)和在主函數(shù)中調(diào)用的7個(gè)子函數(shù),其中有一個(gè)是復(fù)雜情況下的遞歸函數(shù),該函數(shù)是迷宮項(xiàng)目的核心函數(shù),這個(gè)遞歸函數(shù)中又調(diào)用了一個(gè)打印迷宮通路的函數(shù).為了判斷迷宮中的墻和障礙物,還有迷宮中的其他退出方式,該遞歸函數(shù)很多地方都體現(xiàn)了計(jì)算機(jī)編程中的邏輯思維能力需求.

該項(xiàng)目的操作設(shè)計(jì)如圖9所示.

圖9 迷宮項(xiàng)目的操作設(shè)計(jì)

2.5 用戶(hù)界面實(shí)現(xiàn)

直接打印迷宮的有關(guān)重要提示信息,然后顯示迷宮點(diǎn)方陣的表示圖,提示用戶(hù)輸入起點(diǎn),用戶(hù)輸了迷宮的起點(diǎn)后,屏幕紅綠交替閃爍2次,閃爍顯示的內(nèi)容是指定了起點(diǎn)的迷宮二維抽象的點(diǎn)方陣表示圖.閃爍后,程序經(jīng)過(guò)運(yùn)行,打印顯示迷宮通路的各類(lèi)信息.

迷宮項(xiàng)目的C語(yǔ)言編程實(shí)現(xiàn)程序運(yùn)行的用戶(hù)界面和運(yùn)行結(jié)果如圖10所示.

圖10 迷宮項(xiàng)目C語(yǔ)言編程實(shí)現(xiàn)的用戶(hù)界面和運(yùn)行界面

3 迷宮項(xiàng)目對(duì)C語(yǔ)言知識(shí)點(diǎn)和編程能力覆蓋和體現(xiàn)的分析

3.1 迷宮項(xiàng)目對(duì)C語(yǔ)言知識(shí)點(diǎn)的覆蓋

迷宮項(xiàng)目模塊(函數(shù))分解和C語(yǔ)言知識(shí)點(diǎn)的具體覆蓋關(guān)系見(jiàn)表2,每個(gè)函數(shù)就是一個(gè)模塊.全覆蓋:表示覆蓋了C語(yǔ)言中這個(gè)知識(shí)點(diǎn)的所有細(xì)節(jié)內(nèi)容;部分覆蓋:表示覆蓋了C語(yǔ)言中這個(gè)知識(shí)點(diǎn)的一部分細(xì)節(jié)內(nèi)容,還有一部分細(xì)節(jié)沒(méi)有覆蓋到;無(wú)覆蓋:表示沒(méi)有覆蓋到C語(yǔ)言中這個(gè)知識(shí)點(diǎn)的任何細(xì)節(jié)內(nèi)容.

表2 迷宮項(xiàng)目和C語(yǔ)言知識(shí)點(diǎn)的對(duì)應(yīng)關(guān)系

由表2可以看出:主函數(shù)覆蓋了C語(yǔ)言的所有知識(shí)點(diǎn),可以用該項(xiàng)目作為一個(gè)牽引,綜合練習(xí)和訓(xùn)練培養(yǎng)學(xué)生的編程能力.C語(yǔ)言的“語(yǔ)言符號(hào)和規(guī)則集”這個(gè)知識(shí)點(diǎn),被迷宮項(xiàng)目的所有子模塊所覆蓋;C語(yǔ)言的“用戶(hù)界面”這個(gè)知識(shí)點(diǎn),只是在主函數(shù)中被覆蓋;C語(yǔ)言的“數(shù)據(jù)組織方式”這個(gè)知識(shí)點(diǎn),只是在主函數(shù)中被全覆蓋,而在其他模塊中都是部分覆蓋的.

3.2 迷宮項(xiàng)目對(duì)編程能力的體現(xiàn)

迷宮項(xiàng)目和編程能力的對(duì)應(yīng)關(guān)系見(jiàn)表3,全體現(xiàn):表示完成迷宮項(xiàng)目中的這個(gè)模塊需要具備這個(gè)能力,同時(shí)也可以在完成項(xiàng)目中培養(yǎng)、訓(xùn)練、鞏固和加深這個(gè)能力;部分體現(xiàn):表示迷宮項(xiàng)目中的這個(gè)模塊需要部分具備這個(gè)能力,即意味著對(duì)這個(gè)能力的要求程度可以相對(duì)弱一點(diǎn),但可以在項(xiàng)目中進(jìn)一步培養(yǎng)和加深這個(gè)能力;無(wú)體現(xiàn):表示迷宮項(xiàng)目中的這個(gè)模塊沒(méi)有用到這個(gè)能力.

表3 迷宮項(xiàng)目和編程能力的對(duì)應(yīng)關(guān)系

由表3可以看出:迷宮項(xiàng)目的主函數(shù)體現(xiàn)了對(duì)所有編程能力的需要,這說(shuō)明了C語(yǔ)言主函數(shù)的設(shè)計(jì)是個(gè)關(guān)鍵點(diǎn),要設(shè)計(jì)和實(shí)現(xiàn)迷宮項(xiàng)目的C語(yǔ)言主函數(shù),需要所有與編程有關(guān)的能力.編程的“抽象能力”、“邏輯思維能力”和“算法設(shè)計(jì)能力”在迷宮項(xiàng)目的所有模塊中都需要,這也同時(shí)說(shuō)明這3個(gè)能力在計(jì)算機(jī)編程的重要性和需求程度.“用戶(hù)界面設(shè)計(jì)能力”只是在主函數(shù)中有體現(xiàn),其他函數(shù)中沒(méi)有體現(xiàn)對(duì)這個(gè)能力的需求,這又一次說(shuō)明了主函數(shù)的重要性.“需求獲取和分析能力”和“數(shù)據(jù)和操作設(shè)計(jì)能力”在迷宮項(xiàng)目的主函數(shù)和通路遞歸函數(shù)(遞歸尋找所有通路)中是全部體現(xiàn)的,但在其他模塊中只是部分體現(xiàn),這也說(shuō)明了這兩個(gè)模塊也是整個(gè)迷宮項(xiàng)目的關(guān)鍵函數(shù).

由表3得到的結(jié)論是:迷宮項(xiàng)目體現(xiàn)了對(duì)所有C語(yǔ)言編程能力的需要,越是關(guān)鍵和重要的函數(shù)(模塊),對(duì)編程能力的需求就越多.

4 迷宮項(xiàng)目在高職C語(yǔ)言網(wǎng)絡(luò)課程教學(xué)中的實(shí)踐

4.1 項(xiàng)目牽引的教學(xué)模式

選擇了迷宮項(xiàng)目后,我們的目的要是要把它應(yīng)用在高職計(jì)算機(jī)編程C語(yǔ)言的教學(xué)中,這才是我們分析C語(yǔ)言知識(shí)點(diǎn)和編程能力同迷宮項(xiàng)目對(duì)應(yīng)關(guān)系的意義所在.

針對(duì)疫情期間采用的網(wǎng)絡(luò)授課現(xiàn)狀,考慮到迷宮項(xiàng)目覆蓋了C語(yǔ)言的所有知識(shí)點(diǎn),同時(shí)又體現(xiàn)了對(duì)C語(yǔ)言所有編程能力的需求,再結(jié)合高職學(xué)生的特點(diǎn)和迷宮項(xiàng)目的難度,我們?cè)O(shè)計(jì)并實(shí)踐了如圖11的迷宮項(xiàng)目牽引C語(yǔ)言網(wǎng)絡(luò)課程的教學(xué)模式.

圖11 迷宮項(xiàng)目牽引的C語(yǔ)言網(wǎng)絡(luò)課程教學(xué)模式

1)設(shè)置項(xiàng)目牽引問(wèn)題(教師課前完成):按照表1和2分解項(xiàng)目和C語(yǔ)言知識(shí)點(diǎn)和編程能力后,教師在網(wǎng)絡(luò)授課前要準(zhǔn)備好與迷宮項(xiàng)目相關(guān)的多個(gè)牽引問(wèn)題,設(shè)置項(xiàng)目牽引問(wèn)題的目的是為了快速吸引學(xué)生的注意力,提高學(xué)生的學(xué)習(xí)興趣,讓學(xué)生帶著問(wèn)題學(xué)習(xí).例如:如何分析和安排主函數(shù)的應(yīng)該完成的功能,用戶(hù)界面設(shè)計(jì)都需要哪些具體細(xì)節(jié)等.

2)小案例講解 C語(yǔ)言知識(shí)點(diǎn)細(xì)節(jié)(教師課中完成):因?yàn)槊詫m項(xiàng)目本身具有一定的難度,對(duì)于沒(méi)有計(jì)算機(jī)編程基礎(chǔ)的高職學(xué)生,再結(jié)合高職學(xué)生的特點(diǎn),我們采用了先引導(dǎo)性講授,再自主學(xué)習(xí)相結(jié)合的方式.從C語(yǔ)言的基本知識(shí)點(diǎn)開(kāi)始,每個(gè)細(xì)小知識(shí)點(diǎn),用另外的小案例在網(wǎng)絡(luò)課堂上講解.例如:用圖5的尋找最高身高的小案例講解數(shù)據(jù)處理流程和算法設(shè)計(jì).

3)自主學(xué)習(xí)課程網(wǎng)站資源(學(xué)生課中或課后完成):在項(xiàng)目牽引和小案例完成后,把自主權(quán)交給學(xué)生,學(xué)生利用C語(yǔ)言課程網(wǎng)站視頻等網(wǎng)絡(luò)課程資源,課后或課中自主學(xué)習(xí),體會(huì)、鞏固和進(jìn)一步理解小案例的細(xì)小知識(shí)點(diǎn).例如:用網(wǎng)絡(luò)課程資源中的排序程序進(jìn)一步鞏固和提高數(shù)據(jù)處理流程和算法設(shè)計(jì).

4)用分解的迷宮項(xiàng)目模塊布置課堂課后作業(yè)(師生互動(dòng)環(huán)節(jié)):以課堂或課后師生互動(dòng)的方式,總結(jié)和答疑自主學(xué)習(xí)的問(wèn)題,由于每個(gè)學(xué)生自主學(xué)習(xí)的深度和廣度是不同的,師生互動(dòng)可以充分體現(xiàn)分層次教學(xué)的效果.用表1和表2分解的迷宮項(xiàng)目模塊,布置課堂課后作業(yè),復(fù)習(xí)、鞏固、改進(jìn)和提高學(xué)生的自主學(xué)習(xí)結(jié)果.通過(guò)這樣的反復(fù)學(xué)習(xí),達(dá)到舉一反三的效果.但始終用迷宮項(xiàng)目作為學(xué)生的C語(yǔ)言編程最終目標(biāo),由這個(gè)目標(biāo)牽引著,在完成迷宮項(xiàng)目的同時(shí),也完成了學(xué)習(xí)C語(yǔ)言知識(shí)點(diǎn)和培養(yǎng)編程能力的目標(biāo).

5)迷宮項(xiàng)目中 C語(yǔ)言知識(shí)點(diǎn)和編程能力測(cè)試:如果項(xiàng)目模塊還沒(méi)有完成,則繼續(xù)以上1)- 4)的過(guò)程.如果項(xiàng)目的所有模塊都完成了,為了檢測(cè)學(xué)習(xí)效果,教師在網(wǎng)絡(luò)課堂上,總結(jié)迷宮項(xiàng)目知識(shí)點(diǎn)和編程能力體現(xiàn),再根據(jù)項(xiàng)目涉及的知識(shí)點(diǎn)和編程能力,設(shè)計(jì)開(kāi)放式綜合測(cè)試題目,上傳到網(wǎng)絡(luò)上,讓學(xué)生在指定的時(shí)間內(nèi)在線(xiàn)完成.

4.2 師生反饋

從學(xué)生的評(píng)教反饋來(lái)看,學(xué)生對(duì)于項(xiàng)目牽引的網(wǎng)絡(luò)授課教學(xué)模式是滿(mǎn)意的,一方面是對(duì)迷宮項(xiàng)目感覺(jué)同游戲類(lèi)似了,激發(fā)了學(xué)生的興趣,項(xiàng)目的牽引也使得學(xué)生有了解決問(wèn)題的成就感.

從教師的評(píng)學(xué)反饋來(lái)看,感覺(jué)學(xué)生的學(xué)習(xí)熱情提高了,自主學(xué)習(xí)有了目標(biāo).從測(cè)試結(jié)果看,項(xiàng)目化牽引的網(wǎng)絡(luò)授課,學(xué)生的測(cè)試成績(jī)普遍得到了提高.

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

用項(xiàng)目覆蓋知識(shí)點(diǎn),體現(xiàn)編程能力的培養(yǎng),是一種教學(xué)展開(kāi)模式.通過(guò)我們的教學(xué)實(shí)踐,發(fā)現(xiàn)項(xiàng)目的選擇是重要的,首先項(xiàng)目要有一定的難度和復(fù)雜度,還要能覆蓋所有的知識(shí)點(diǎn),同時(shí)又要體現(xiàn)編程能力的訓(xùn)練和培養(yǎng).其次,就像游戲總能引起學(xué)生的興趣一樣,項(xiàng)目一定要有能吸引學(xué)生注意力,引起學(xué)生興趣的作用,這種項(xiàng)目才能起到牽引作用.

項(xiàng)目牽引的教學(xué)模式在網(wǎng)絡(luò)課程中體現(xiàn)了它的重要性.這主要是同網(wǎng)絡(luò)化教學(xué)的優(yōu)點(diǎn)相關(guān),網(wǎng)絡(luò)化教學(xué)的優(yōu)勢(shì)是可以充分發(fā)揮學(xué)生的自主學(xué)習(xí)能力、個(gè)性化的學(xué)習(xí)時(shí)空和個(gè)性化接受知識(shí)體系.把知識(shí)點(diǎn)全部融入到項(xiàng)目中,可以快速吸引學(xué)生的注意力,提高學(xué)生的學(xué)習(xí)興趣,讓學(xué)生感覺(jué)到是項(xiàng)目牽引著學(xué)習(xí),并能使學(xué)生盡快掌握項(xiàng)目所涉及到的知識(shí)點(diǎn),在完成項(xiàng)目中找到學(xué)習(xí)的樂(lè)趣和自己解決問(wèn)題的成就感.

猜你喜歡
C語(yǔ)言迷宮編程
編程,是一種態(tài)度
元征X-431實(shí)測(cè):奔馳發(fā)動(dòng)機(jī)編程
編程小能手
基于Visual Studio Code的C語(yǔ)言程序設(shè)計(jì)實(shí)踐教學(xué)探索
紡織機(jī)上誕生的編程
基于C語(yǔ)言的計(jì)算機(jī)軟件編程
電子制作(2018年16期)2018-09-26 03:27:08
大迷宮
高職高專(zhuān)院校C語(yǔ)言程序設(shè)計(jì)教學(xué)改革探索
迷宮
捕網(wǎng)迷宮
介休市| 文登市| 屏东市| 五原县| 榆林市| 铁岭县| 九江市| 绥阳县| 城口县| 白朗县| 略阳县| 香格里拉县| 永德县| 普兰县| 漳平市| 兴安盟| 马关县| 婺源县| 大冶市| 安西县| 萝北县| 达孜县| 福海县| 南通市| 凌云县| 贺州市| 洪湖市| 中西区| 大厂| 隆尧县| 榆社县| 乐东| 来宾市| 荆州市| 北安市| 勃利县| 喀什市| 普宁市| 永年县| 永顺县| 搜索|