C語言程序設計課程教學改革與實踐_第1頁
C語言程序設計課程教學改革與實踐_第2頁
C語言程序設計課程教學改革與實踐_第3頁
C語言程序設計課程教學改革與實踐_第4頁
C語言程序設計課程教學改革與實踐_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、    “c語言程序設計”課程教學改革與實踐    靳小燕 魏慧琴 周圍摘 要 c語言程序設計課程是大學理工科各專業(yè)培養(yǎng)學生計算機應用能力的一門重要的基礎課程,也是我校理工類學生選課人數最多的一門編程類課程。針對目前c語言程序設計課程教學中存在的問題進行教學改革與實踐。通過c語言程序設計的課程改革,建立高效的在線程序自動批改系統(tǒng),進行題庫資源建設,融合專業(yè)特色,對不同專業(yè)的學生,可以結合其專業(yè)特點,講解一些和專業(yè)知識相關的案例,并進行實踐;培養(yǎng)學生學習程序設計課的興趣,提高編程能力。關鍵詞 c語言程序設計 教學改革 在線批改 題庫 專業(yè)特色:g424&#

2、160;                                 :a   doi:10.16400/ki.kjdkx.2021.03.055teaching reform and practice of "c language programming"jin xiaoyan, wei huiqin, zhou wei(school of computer and information techn

3、ology, beijing jiaotong university, beijing 100044)abstract c language programming is an important technical basic course for cultivating students' computer application ability in various majors of university science and engineering. programming ability is one of the most demanding vocational sk

4、ills in today's society. in view of the problems existing in the teaching of c language programming course, the teaching reform and practice are carried out. through the curriculum reform of c language programming, an efficient online program automatic correction system is established, the resou

5、rces of the question bank are constructed, and the professional characteristics are integrated. for students of different majors, some cases related to professional knowledge can be explained and practiced according to their professional characteristics; cultivate students' interest in learning

6、programming and improve their programming ability.keywords c language programming; teaching reform; online correction; question bank; professional characteristicsc語言是一種應用較為廣泛的面向過程的計算機高級語言,很多高等院校都開設了這門課。在我校,尤其是通信專業(yè),電氣專業(yè)等本科生必選的計算機基礎課程,也是給其他理工科專業(yè)推薦的公共基礎課。主要是培養(yǎng)各個專業(yè)的學生掌握用計算機解決問題的方法,培養(yǎng)學生的邏輯思維能力,為后續(xù)的計算機課程或

7、相關的專業(yè)課打下良好的基礎,比如學完c語言程序設計課,可以再學習c+程序設計;或者電氣學院的學生后續(xù)學習單片機課,其中的案例也是用c語言編寫的。由此我們可以說,c語言程序設計課程的教學質量的好壞會影響后續(xù)課程的學習效果。c語言程序設計課程是我校開設的全校性限選課,共48學時,每年選課人數超過兩千人。1 本課程教學中的問題分析首先,學習目標不明確,學生學習的積極主動性不夠;c語言程序課程的學習有其自身的特點,就是要通過大量具體的上機實驗訓練,在實踐中提高編程的基本能力,并將程序設計的思想逐步理解和應用。尤其對于非計算機專業(yè)的學生,似乎不是太明白學習一門編程語言有什么用,也不太清楚此課程對他們自己

8、的專業(yè)有什么樣的幫助。因此,在教學的過程中為學生建立明確的學習目標是非常重要的。其次,在實踐教學中,由于缺乏高效的課程交流平臺,教師無法及時掌握學生的學習情況和學習效果。學生自己在課下的上機環(huán)節(jié)不能得到老師的及時輔導,通常遇到問題容易放棄,并且存在作業(yè)拷貝現象。隨著多媒體技術和網絡技術的快速發(fā)展,通過電子郵件來完成和傳統(tǒng)的作業(yè)批改方式已遠遠不能滿足當前的發(fā)展需要。第三,目前這門課的教學基于同一個教學大綱,教師講授的內容范圍一致,沒有按不同專業(yè)分類。通過調查,了解到多數學生希望在進行綜合程序設計中能做和自己專業(yè)相近的項目,激發(fā)學生的學習積極性,取得良好的教學效果,為后續(xù)課程打下良好的基礎。例如:

9、電氣學院后續(xù)專業(yè)課程“單片機”,需要用c語言編程。而平時我們對這一塊的訓練幾乎沒有。如何將c程序設計課程和學生專業(yè)相結合,建設適合不同專業(yè)學生學習的教學資源,是課程改革研究的重點。2 課程教學改革與實踐計算機技術和網絡技術的發(fā)展為網上學習提供了可能和保障。本課題首先研究了網絡教學的特點,結合c語言課程的教學大綱,規(guī)劃和設計出相應的知識模塊,圍繞這些知識模塊開發(fā)制作了本課程所需要的教學資源,比如ppt、各種題型的題目和難度各異的題目以及適用于不同專業(yè)的題目,并應用于教學中。2.1 自動批改系統(tǒng)的實現通過書面、電子郵件來完成程序實踐作業(yè)的方式和傳統(tǒng)的程序作業(yè)批改方式已遠遠不能滿足該課程的實踐環(huán)節(jié)的

10、需要,依托現有平臺,建立了自己的題庫,實現了c語言程序設計課程的遠程作業(yè)提交自動批改,平臺系統(tǒng)具有對源代碼進行編譯和執(zhí)行的功能,并通過測試數據(一般為5組或5組以下)來檢驗程序運行是否正確,每道題都有評判結果,可以比較被測程序的輸出數據和標準答案的情況,然后進行打分,學生也能及時看到自己設計的程序是否正確。2.2 融合專業(yè)特色的c語言程序設計課程在c語言程序設計課程的教學過程中,除了基本的c語言基本語法知識的介紹,程序設計方法的建立,將數學領域一些有趣的問題引入課堂中,調動學生學習的積極性,例如,針對數學專業(yè)的學生可以增加如下專題數學黑洞問題,比如6174問題,任何不同的四位數(四位都一樣的除

11、外),通過從大到小和從小到大的排列,得到差后再重復上述運算,至多7次,得到的答案都是6174。算法可以分為以下幾個步驟:(1)分離整數中的各位數字;(2) 將各位數字重新排列成可能的最小數; (3)將各位數字重新排列成可能的最大數。要將各位數字重新排列成可能的最小數,這就涉及排序問題,排序算法非常重要,應用廣泛,從這一點,可以引導學生對排序問題進行研究,弄清楚有哪些排序算法,每種算法的思路和實現過程,開拓思路,尋找更好的算法。對于電信學院的學生,增加如下案例,計算漢明距離,漢明距離是以理查德·衛(wèi)斯里·漢明的名字命名的。漢明距離是指兩個字符串(等長)對應位置上的不同字符的總個

12、數。也就是說,將一個字符串變成另一個字符串所需要換掉的字符個數。例如1011101 與 1001001 之間的漢明距離是 2。2143896 與 2233796 之間的漢明距離是 3。在一個有多個編碼的集合中,任何兩個編碼之間的漢明距離的最小值,我們稱它為最小漢明距離,這個值越大,碼組的抗干擾能力就越強,參考程序如下:#include int hamdist(char *a, char *b)int dist = 0;while (*a && *b) dist += (*a != *b) ? 1 : 0;*a+;*b+;return dist;int main()char a1

13、00, b100;fgets(a,100,stdin);fgets(b,100,stdin);int dist = hamdist(a, b);printf("%dn", dist);return 0;在程序中,可以定義數組,指針和函數,并學會使用fgets函數和函數調用等知識和編程小技巧。在教學過程中,對于每個小問題都給出多種解決方案,讓學生體會在程序設計過程中可以在多種算法中靈活選擇,這樣就可以調動學生進行主動思維的積極性,課可以讓學生對所學的內容進行更好地理解。2.3 學習資源的建設首先將不同專業(yè)學習的共同內容按照知識點組織學習資源庫,然后再按專業(yè)組織不同的學習內容和

14、案例,設計按專業(yè)分類的訓練題目。數字資源表現形式多樣性;注重資源建設和學生的交互性。有利于整體提高學生的實際編程能力,取得好的學習效果。題庫中的題目如圖1、2、3所示。圖1課程資源初步建成后,大部分c語言代課老師使用題庫中的題給學生布置作業(yè),編程題和改錯題放在c平臺上,300多道選擇題放在教務處課程平臺上,供校內非計算機專業(yè)的學習程序設計課程的學生練習。通過對題庫的使用,以適合的方式讓學生進行試用,能提高學生的學習興趣,提高編程能力,取得了較好的教學效果。下一步將對反饋意見進行分析,更好地進行教學改革。3 展望將專業(yè)特色融合到計算機程序設計課程中,不但可以增強學生的學習興趣,而且可以提高學生的編程能力和自信心。經過教師們這幾年的教學實踐,我們看到教學效果還是比較好的。同時,對老師們提出了更高更嚴格的要求,需要花費更多的時間精力來備課,在課堂上需要額外講解與專業(yè)相關的案例,給平臺題庫補充更多的與專業(yè)相關的題目,不斷豐富課程資源,學習各專業(yè)的一些基本知識,課后及時對學生的問題進行答疑和解決。對于目前c語言程序設計教學過程中存在的一些問題和不足之處,本文希望能夠

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論