◆劉志芳 劉 偉
(衡水學(xué)院分院)
C語言程序設(shè)計教學(xué)探討
◆劉志芳 劉 偉
(衡水學(xué)院分院)
C語言程序設(shè)計是計算機(jī)專業(yè)的基礎(chǔ)課,在整個課程體系中占有重要地位。在C語言教學(xué)過程中,教師的教法和學(xué)生學(xué)法的差異,對教學(xué)效果都會產(chǎn)生直接的影響。針對學(xué)生學(xué)習(xí)語言課程的一般思維規(guī)律和思維模式,進(jìn)一步探討適合??圃盒W(xué)生的教學(xué)方法,對以后的C語言程序設(shè)計教學(xué)有所幫助。
C語言程序設(shè)計是一個邏輯性很嚴(yán)謹(jǐn)?shù)恼n目,學(xué)生在設(shè)計程序時常常感到無從下手。其原因可分為兩個方面:一是所使用的教材,在每一章節(jié)介紹完概念之后,提供一些例子加深學(xué)生對概念的理解,針對本章中出現(xiàn)的內(nèi)容提供一些練習(xí)題。用來測試學(xué)生對各章節(jié)中的基本概念記憶和理解程度。二是學(xué)生更多關(guān)注的是教材中的典型例題,對于程序的系統(tǒng)概念沒有真正掌握理解,沒有整體設(shè)計的概念,在做練習(xí)題時涉及到綜合編程部分感到困惑。學(xué)生在學(xué)習(xí)的過程中,沒有注意到如何綜合運用相關(guān)內(nèi)容解決具體問題,以導(dǎo)致學(xué)生在學(xué)完程序設(shè)計課程時,進(jìn)入應(yīng)用階段,面對具體的專業(yè)設(shè)計要求無從下手。
通過C語言課程的學(xué)習(xí),學(xué)生應(yīng)正確理解C語言的基本概念,掌握語句的格式及用法,編寫出優(yōu)化的實用程序。我們知道C語言課程強(qiáng)調(diào)的是實踐性,對于計算機(jī)語言課程的教學(xué)不應(yīng)僅僅是傳授知識,應(yīng)該以培訓(xùn)能力為主,過分強(qiáng)調(diào)該語言的系統(tǒng)性和完整性可能會轉(zhuǎn)移學(xué)生對課程重點的注意力。在規(guī)定的課時內(nèi)教師講解不可能面面俱到,所以授課時必須突出重點,突出實用性,遵循理論與實踐相結(jié)合的原則。教師應(yīng)始終堅持以應(yīng)用為中心,以算法為基礎(chǔ),以培養(yǎng)學(xué)生的實踐能力為核心,突出技術(shù)實用性和學(xué)習(xí)能力的培養(yǎng)。
程序設(shè)計課程具有很強(qiáng)的實踐性,要以社會對編程能力的需求和技術(shù)發(fā)展為依據(jù),調(diào)整教學(xué)內(nèi)容,以適應(yīng)技術(shù)崗位能力要求。在課程設(shè)置與建設(shè)中,要充分體現(xiàn)教學(xué)內(nèi)容在培養(yǎng)學(xué)生實踐能力方面的需求,適當(dāng)增加實訓(xùn)教學(xué)內(nèi)容,以強(qiáng)化學(xué)生的實際開發(fā)和應(yīng)用能力。
C語言程序設(shè)計,注重由設(shè)計算法到書寫程序并進(jìn)行調(diào)試的整個過程,顯得抽象復(fù)雜。在教學(xué)過程中,應(yīng)該先介紹一個較完整的程序例子,該例子包含了語言中的主要語句,目的是使學(xué)生先對程序有個初步的印象,再簡單介紹該例子中用到的語句,讓學(xué)生對該語言的學(xué)習(xí)有一個大概的了解。整個教學(xué)過程中應(yīng)該把“解題思路、方法和步驟”當(dāng)作授課的重點,從而讓學(xué)生明白如何分析、解決實際問題,逐漸培養(yǎng)學(xué)生進(jìn)行程序設(shè)計的正確思維模式。
算法是程序設(shè)計的靈魂,是教學(xué)重點,也是教學(xué)難點,一個優(yōu)化的程序必有一個好的算法。而語言只是表示形式,沒有正確的算法,計算機(jī)將解決不了任何問題,對于C語言所涉及到的算法,應(yīng)進(jìn)行部分精講多練。通過案例分析,講解程序設(shè)計的思想和方法,將課程內(nèi)容分為若干個主題,以程序設(shè)計做為貫穿各主題的主線。每個主題的教學(xué)過程由“要點講解”、“練習(xí)上機(jī)實踐”和“疑難解答”三個階段組成?;趩栴}的教學(xué)提出問題,以學(xué)生獨立完成為主,教師只提供必要的輔導(dǎo),培養(yǎng)學(xué)生探索問題和解決問題的能力。將C語言的知識點溶化到一個個實訓(xùn)項目的程序編寫中。在課程初期,主要是進(jìn)行單項的編程練習(xí),重在掌握C語言的基本語句、數(shù)據(jù)類型與程序結(jié)構(gòu)等。在進(jìn)入數(shù)組、函數(shù)、結(jié)構(gòu)、指針和文件內(nèi)容教學(xué)時,開始實訓(xùn)項目的編程實踐,逐步組建“教師管理系統(tǒng)”,并且添加文本菜單,整合擴(kuò)展記錄添加、排序、查詢、統(tǒng)計和記錄瀏覽等內(nèi)容形成課程設(shè)計。
計算機(jī)軟件課程具有多樣性、復(fù)雜性特點,我們要針對每個學(xué)生任務(wù)完成的情況,讓同學(xué)們展示自己的勞動成果,及時肯定學(xué)生的成績,這樣會有利于激發(fā)學(xué)生們的學(xué)習(xí)熱情,保持濃厚的學(xué)習(xí)興趣,對學(xué)生的后續(xù)學(xué)習(xí)將產(chǎn)生強(qiáng)大的動力和自信心,也可以對每次任務(wù)的完成情況進(jìn)行積分制度,算入期末成績中,以激發(fā)學(xué)生們的學(xué)習(xí)興趣。
可以通過給學(xué)生布置作業(yè)的形式讓同學(xué)們自學(xué),初始階段往往會遇到因為學(xué)生自學(xué)能力差而帶來的困難,所以在學(xué)生完成任務(wù)時,老師既要要求學(xué)生獨立思考、自主學(xué)習(xí),又要鼓勵學(xué)生間進(jìn)行協(xié)作學(xué)習(xí)。教師可以分配一些比較復(fù)雜的問題,由幾個學(xué)生組成一個小組合作解決,這樣同學(xué)們可以互相探討學(xué)習(xí)方法,協(xié)作解決一些遇到的問題,通過解決問題,鍛煉學(xué)生綜合應(yīng)用知識的能力、培養(yǎng)其創(chuàng)造性和合作精神。在教學(xué)中教授的不僅僅是具體語言的語法知識,更重要的是通過這門語言學(xué)習(xí),培養(yǎng)學(xué)生發(fā)現(xiàn)問題、分析問題、解決問題的能力,使學(xué)生更好的學(xué)好是C語言這一課程。