C語言程序設計教學探索

時間:2022-01-12 03:47:57

導語:C語言程序設計教學探索一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

C語言程序設計教學探索

摘要:隨著社會的發展,教育業開展了一系列的改革,而高校作為專業人才培養的主要基地更是為了更好地實現人才的輸出對各學科的教學都進行了一定的改革。隨著信息時代的到來,信息技術的重要性不言而喻。因此,教育從業人員在對“C/C++語言程序設計”這一學科的教學中,一直致力于對其教學模式改革的探索,并提出了“以應用為前提,學生為主體,知識為主線,培養學生的實踐動手能力為著力點”的教學理念。為了更好地實現和貫徹這一教學理念,需要教師們對教學活動中的各個環節進行一定的改革與創新。本文將對課程教學現狀及存在問題進行分析,并對教學設計、課程內容組織、教學方法和手段等方面的改革進行探討,希望能為更好地實現“C/C++語言程序設計”這一學科教學的發展產生一定的推動作用。

關鍵詞:C/C++語言程序設計;教學改革;教學方法

1引言

“C/C++語言程序設計”是一門較為基礎的計算機課程,是很多理工科學生的必修科目,在理工科的教學設計中占有重要的地位。由于大部分理工類學生在進行專業學習的時候都會應用到計算機這一強大的輔助工具,所以學習好“C/C++語言程序設計”這一課程將對理工類學生綜合能力的提高起到非常積極的作用。在這種情況下,學校與教師要重視“C/C++語言程序設計”教學活動的開展,并對其進行不斷地探索,以使得其積極作用得到充分地發揮[1]。從目前的高校教學可以看出,雖然對“C/C++語言程序設計”課程的教學進行了一定的改革,但是其仍然存在一些問題。例如,有些教師在教學時依然沿用傳統的教學理念,過于重視課堂理論教學而忽視上機實踐,使得學生所學習的理論知識無法通過一定的練習轉化為相應的能力,理論教學與實踐教學形成很大的脫節;有些師并沒有認識到學生操作能力及創新能力培養的重要性,使得學生因疏于實踐造成編程能力不強,當程序發生問題時缺少相應的調試能力;此外,由于“C/C++語言程序設計”課程的教學內容較多,但相應的課時有限,導致很多學生無法跟上教師的授課進度,造成了教學效率不佳的現狀。

2教學及課程設計

2.1教學設計。(1)以學生為本在以往的教學過程中,教師往往將自身作為課堂的中心,來進行知識點的講解,學生只需要被動地進行知識點的接收。這種教學方式使得學生的學習積極性受到了很大的打擊,不利于學習興趣的培養,而且會給今后的學習生活帶來不利的影響[2]。因此,教師需要擺脫傳統教學模式的束縛,要以學生為教學中心來開展一系列的教學活動,拋棄以往的灌輸式的教學方法,以引導為教學的主要方式來實現學生課堂的主體地位。此外,教師要重視學生自學能力的培養,要充分利用多媒體等教學輔助工具,重視相關知識點的提示資源的選取,使學生能夠在教師的引導下發揮主體作用。學生通過獨自探索以及小組探討等模式實現知識點的探究式學習。與此同時,教師需要對學生的學習情況進行及時了解并予以一定的引導,使得他們能夠更加高效更有質量地完成自主學習。在學生進行探究學習后,教師需要對學生的學習成果進行了解,并對重點難點進行講解、強調,對學生的自主學習進行補充。為了使理論課教學能夠更加有效地開展,教師要在教學開展前通過實踐來充分了解學生對基礎知識及相關技能的掌握情況,以便他們在進行教學課程設計時能夠更加貼合學生的實際教學目標以及環節的設置[3]。這樣當學生掌握了相關知識點后,教師就可以適當地加快學生的學習進度,并對知識點進行適當擴展,使得學生可以更加高效地完成課程學習。(2)激發學生學習興趣實驗表明,學生主動學習相比于被動學習往往會產生更好的學習效果。如果想要讓學生能夠積極地投入到主動學習,就要讓他們對相關知識點的學習產生一定的興趣,進而為學生的自主學習提供動力,這就需要教師對每一節課的課程設計都予以重視,并對流程進行精心設計,使得教學活動能夠最大限度地激發學生的學習積極性。在開始進行課程教學時,教師就要將“C/C++語言程序設計”課程學習的作用進行闡述。考慮到學生們往往會更加關注課程與自身專業之間的聯系,教師可以結合相應的專業以及有關IT的熱點話題來介紹課程的意義,也可以舉一些往屆學生將課程知識用于專業設計以及參加程序設計競賽的事例讓學生對課程學習產生一定的好奇與探究欲望,為學生更好地跨入程序設計大門奠定基礎。(3)培養學生設計思維在進行程序設計的教學過程中,相關的語法、語句和細節特點一直是教學活動開展的重點內容。若教學流程的設計按照語言的脈絡來進行課程的開展,會很容易使得學生在學習時感到枯燥乏味,而且過于理論化的講解方式也會讓學生無法直觀了解相關語句的作用。這樣會使得很多學生雖然對程序設計的相關理論有所了解,但在獨自進行編程時往往存在一定的困難且會出現多種問題,很難實現相關知識點的充分利用,更是難以實現相關問題的解決[4]。這就要求教師在進行教學活動的開展時,要對傳統的以語言脈絡為教學計劃的教學活動進行改革,實現以系統化程序設計思維來開展相應的教學活動,使得學生在進行相關理論知識學習時,也可以得到編程能力的提高,并促使學生具備一定的系統性思維。程序設計課程除了要讓學生實現對C/C++語言基礎知識的熟練掌握外,還要讓學生能夠學會程序員解決問題的思維方式,讓學生能夠更加專業地實現程序設計,進而能夠更加高效地提高編程能力。系統化的程序設計思維的培養過程就是要讓學生能夠獨立地實現對相關問題的探索及創新,使得學生能夠解決語言程序設計時出現的問題,讓學生的思維得到一定的鍛煉,增強編程能力及實際應用能力,進而提高綜合素質。(4)轉變角色進行提問從“C/C++語言程序設計”的實際教學可以看出,很多學生在課堂上并不活躍,而且很少提出對相關知識點的問題。造成這一現象的原因有兩點,一是因為有些學生提不出問題,二是因為一部分學生不知道如何提問。學生很少提問這一現象就使得一部分學生在學習中遇到問題無法得到解決,而教師也無法對學生的學習情況進行全面了解,對教學效果造成一定的消極影響。為了使課堂教學能夠產生更好的教學效果,教師需要站在學生的立場上以學生的角度來進行相關知識點的思考,并以此為基礎來針對學生提出一系列的問題并讓他們進行回答。如果學生回答錯誤或者無法給予相應的答案,教師則需要對相應知識點進行講解。這樣就改變了以往教師以自己為主體來進行課堂準備的教學方式,而是通過更加貼合學生的問題設置實現學生學習重難點的把握[5]。此外,教師要為知識點選取相應的經典案例并以此為教學方式向學生提出恰當的問題并進行一定的分析,教師還可以對相關的程序設置一定的錯誤讓學生進行修改。這樣就可以推動學生不斷進行相關問題的分析并實現更深入地了解錯誤產生的內在原因,促使學生在不斷的練習中實現相關知識以及技能的掌握。這種與學生有著更好互動的教學方式也可以更好地激發學生的學習積極性,使得學生能夠更加積極地投入到編程問題的分析及解決中去。2.2理論課程設計。當前正處于一個信息技術速度飛速發展的時代,計算機技術在各行各業的發展中都起到了一定的推動作用。這就使得計算機科學與其他科學進行了一定的融入及交叉,因此計算機應用能力已成為理科生進行專業學習的必備能力。如今大部分院校都為理工類專業學生設置了計算機程序設計的學習要求,并對其教學活動的開展予以了越來越多的重視。開設計算機語言程序設計課程的最根本目的就是要讓學生能夠實現對其進行一定的運用,進而更好地處理實踐中的一系列問題。所以在教學活動的開展過程中,要本著學以致用的原則。函數作為“C/C++語言程序設計”課程的重要內容之一,同時也是教學過程中的重難點,教師在進行課程授課的時候要將函數提前講解,使得學生能夠更早地接觸函數這一知識點進而實現模塊化的教學,促使學生能夠更好地掌握函數的相關知識點,產生更好的學習效果。為了使得學生能夠對相關知識點進行靈活地運用,教師在講解輸入\輸出庫函數的時候可以與文件的相關知識進行結合,使得學生能夠在實際應用中遇到不同數據的不同輸入\輸出方式時可以實現更高效的解決。除了理論教學的改革外,在教材內容的編排上也要進行一定的改良,要更加注意其合理性以及實用性,而且為了使得學生能夠對學習內容以及重難點進行充分的把握,可以在每章節內容開展之前標明該部分內容學習的目標,并設置課前思考、本章難點以及易錯點等環節,使得學生在依據教材進行學習時可以對教學內容以及要求一目了然,進而更有針對性地實現重點知識的掌握以及易錯點的理解[6]。而且在每章節知識點的講解后還要設置一定的題目,在練習題目的選擇上需要包括難易程度不同的程序設計題目,并且還要涉及一些較為常見的算法知識的運用。同時也要注意題目之間的關聯性,這樣可以使得學生能夠逐步實現對相關知識點的深入了解,使得學生能夠舉一反三地處理相關的程序設計問題,促使學生的編程能力以及解決問題的能力得到一定的提高。2.3實驗課程設計。語言程序設計相關理論知識學習的目的就是為了能夠實現對其進行更好地運用,所以在對教學模式進行改革時就要充分重視其實踐性的把握,要將實踐課程與理論課程進行科學結合,只有這樣才能使學生在C/C++語言程序設計教學中既能夠實現理論知識的學習,又能夠鍛煉動手能力以及解決問題的能力。在進行程序設計實驗教學時,以往教師都是利用實驗來對相關理論知識進行驗證。這種教學理念使得實驗教學的目的無法得到充分實現,學生的應用能力也無法得到提高,所以教師在進行實驗課程的開展時就要更加重視設計性實驗的開展,只有這樣才能使得學生分析問題的能力以及解決問題的能力得到提高,更加深入理解理論知識。

3教學方法和手段

“C/C++語言程序設計”的教學目標就是要讓所有學生在掌握理論知識的同時也能實現編程能力以及解決問題能力的提高,并促使學生能夠更深入地實現程序設計思維的把握,進而使學生可以更全面地進行問題的分析以及更高效地實現相關問題的解決。為了達到以上目標,需要教師對教學方法以及教學手段進行一定的改革與創新。3.1教學方法。(1)課內與課外相結合教師在進行相關知識點的教學時可以以典型例題為模板來開展一定的講解,在對案例進行分析時教師要重點講解程序設計的基本方法、測試方法以及調試、排錯的等方面的知識點。這樣可以使學生能夠對相關錯誤的產生原理有一個更加明確的了解,使他們能夠更好地實現相關問題的解決。在實驗課程中,教師要根據學生的學習程度而為其安排適當的實驗項目,并且在實驗項目的選擇上要充分體驗其實用性以及綜合性。由于實踐課的課時有限,所以教師可以為學生選擇一些較為經典有趣的編程題目作為課外作業,引導學生能夠利用課外時間來進行一定的練習。為了使得課外習題的使用能夠達到一個較好的效果,教師可以讓學生組成學習小組進而實現彼此的討論學習以及監督,讓學生能夠更加積極地完成相關的課后練習,促使他們的實踐能力能夠得到進一步的加強。此外,為了使學生能夠激起對程序設計語言的學習興趣并不斷提高自身的程序設計水平,學校可以組織開展一定的程序設計比賽,采用初賽和決賽制,并為學生設置綜合性較強的題目,促使讓學生在競爭的壓力下實現自身能力的逐步提高。(2)重視實踐教學為了使得學生能夠在實踐課堂上更加高效地完成相關的操作練習,教師需要加強對實踐課堂教學的管理。在進行實踐教學時,教師可以利用多媒體等教學輔助設備為學生的程序設計思路予以一定的引導及啟發,使學生能夠對程序設計的過程更加明確。教師還需要在日常的實驗教學過程中增加隨堂測試進而對學生的實踐效果進行考察,并將其與學生期末考試的成績相結合作為學生整個學期成績的評價內容之一。這樣就可以使得學生更加重視C/C++語言程序設計的實踐過程,促使他們的應用能力得到一定的提高。(3)網站互動學習如今,信息技術已經融入到了人們日常生活中的方方面面,并為人們的生活帶來了很大的便利。因此,教師在進行C/C++語言程序設計教學時也可以對互聯網進行適當的運用,建立相應的資源網站來為學生提供網上學習、在線答疑、作業提交以及考試等服務。同時可以向學生推薦一些可以進行知識拓展的網站,使學生的學習渠道得到一定的擴展,讓他們可以隨時隨地地學習,并在第一時間解決在學習中遇到的問題。(4)改革考核方式為了促使學生的學習興趣能夠有所提高,促使他們的問題解決能力以及編程能力的提升,在對學生進行考核時可以采用開、閉卷相結合的考試方式,讓基礎好的學生進行開卷考試,實現較綜合編程題目的程序編寫。實踐發現,通過開卷考試,學生的分析問題、解決問題以及編程能力都得到了一定的提高。3.2教學手段。為了使得學生能夠更加積極地參與到程序課程教學中,學校要為學生提供更加現代化的教學工具,促使學生的學習效率能夠得到一定的提高。(1)多媒體教學在進行理論知識的教學時,教師要充分利用多媒體這一教學工具,為學生進行課件的播放并通過一定的視頻以及相關軟件工具的應用實現對學生學習的引導。同時可以將程序運行的過程設置成相應的動畫,這樣就可以讓學生更加直觀地了解程序語言執行的整個過程,促使學生更加深入地理解語言設計。(2)建立教學網站學校可以開發網上教學平臺來為學生提供電子教案以及課件視頻等教學內容,也可以提供在線答疑服務并設置討論的版塊,為學生的自主學習提供一個平臺,使學生能夠更好地完成C/C++語言程序設計學習的一系列的環節。(3)網上考試系統學校通過為學生提供網上考試系統,使得學生能夠在考試環境下實現更加高效的自我測評。系統帶有自動組卷及評分的功能,這樣就為學生學習效果的提高創設了一個更高效的平臺。

4總結

綜上所述,為了使“C/C++語言程序設計”課程的教學能夠更好地適應當今社會的需求,需要改變傳統的以理論教學為主的教學模式。在新的教學模式下,要求教師在進行教學活動的開展時要更加強調學生實踐能力的培養,使得學生能夠對所學知識進行靈活地運用,進而達到解決實際問題的教學目標。與此同時,教師需要及時地對教學理念進行更新,并在教學內容的選擇上結合信息技術發展的特點,積極地對教學內容進行一定的拓展。在教學方式的選擇上也要注重學生學習興趣的激發,實現他們創造力的培養,促進他們綜合能力的提升。信息時代的“C/C++語言程序設計”教學為教師提出了更多的挑戰,需要教師在教學過程中不斷地對教學中的各個環節進行探索,以實現教學質量的不斷提高。

參考文獻

[1]陳月娟.C語言程序設計案例教學研究及案例庫系統的建設.信息技術與信息化,2020(06):180-182

[2]劉娟.高校《C語言程序設計》在線開放課程建設之初索.電腦知識與技術,2020,16(18):118-119

[3]高爽,賈麗娟.“C語言程序設計”線上線下精品課程探索與實踐.黑龍江教育(高教研究與評估),2020(07):45-46

[4]沈陸.“4+0”高職本科《C語言程序設計》課程教學改革探討.中國新通信,2020,22(12):150-151

[5]田榮明.高職C語言程序設計課程教學改革研究.科技經濟導刊,2020,28(17):155

[6]鄧定勝.以C語言程序設計為試點,因材施教,分層教學的探索.電腦知識與技術,2020,16(16):185-186,190

作者:劉路 單位:天津職業技術師范大學