0
首頁 精品范文 c語言程序設(shè)計(jì)

c語言程序設(shè)計(jì)

時(shí)間:2022-07-22 08:28:44

開篇:寫作不僅是一種記錄,更是一種創(chuàng)造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇c語言程序設(shè)計(jì),希望這些內(nèi)容能成為您創(chuàng)作過程中的良師益友,陪伴您不斷探索和進(jìn)步。

第1篇

鐘 實(shí)

(江西科技學(xué)院)

[摘 要]C語言程序設(shè)計(jì)課程是計(jì)算機(jī)專業(yè)教育的重要組成部分。將探究教學(xué)引入C語言程序設(shè)計(jì)教學(xué)中,不僅可以提高學(xué)生學(xué)習(xí)的興趣,調(diào)動(dòng)教師教學(xué)的

熱情,也豐富了探究教學(xué)的理論與實(shí)踐。具體分析并探討了C語言程序設(shè)計(jì)探究教學(xué)的實(shí)施目標(biāo)、實(shí)施條件、教學(xué)情境的創(chuàng)設(shè)、探究形式、教學(xué)評(píng)價(jià)等問題。

[關(guān)鍵詞]C語言程序設(shè)計(jì) 探究教學(xué) 實(shí)施目標(biāo)

一、 C語言程序設(shè)計(jì)探究教學(xué)實(shí)施的目標(biāo):情感目標(biāo)、能力目標(biāo)和認(rèn)知目

標(biāo)

1、體驗(yàn)C語言程序設(shè)計(jì)的編程思想,激發(fā)和保持對(duì)C語言程序設(shè)計(jì)課程的

求知欲,形成積極主動(dòng)地學(xué)習(xí)和參與C語言程序設(shè)計(jì)課程探究活動(dòng)的態(tài)度。

2、能辯證地認(rèn)識(shí)C語言程序設(shè)計(jì)對(duì)社會(huì)發(fā)展、科技進(jìn)步和日常生活學(xué)習(xí)的

影響。

3、獲得親自參與研究探索的積極體驗(yàn)、培養(yǎng)嚴(yán)謹(jǐn)?shù)目茖W(xué)態(tài)度。

4、能從日常生活、學(xué)習(xí)中發(fā)現(xiàn)或歸納可以利用C語言程序設(shè)計(jì)解決的問題,

通過問題分析確定程序功能。

5、能根據(jù)任務(wù)的要求,確定所需信息的類型和來源,并鑒別信息的真實(shí)性、

準(zhǔn)確性和相關(guān)性。

6、掌握計(jì)算機(jī)程序的基本概念,理解并掌握C語言程序設(shè)計(jì)語言的基本知

識(shí),包括語句、數(shù)據(jù)類型、變量、常量、表達(dá)式、函數(shù)等,熟悉語言的語法規(guī)則,熟

悉計(jì)算機(jī)程序執(zhí)行的基本過程。

7、了解C語言程序設(shè)計(jì)語言,掌握編寫程序、編譯程序、連接程序以及程序

開發(fā)環(huán)境等基本知識(shí),掌握調(diào)試、運(yùn)行程序的基本方法與技巧。

二、C語言程序設(shè)計(jì)探究教學(xué)實(shí)施的條件

1、掌握一定的計(jì)算機(jī)操作基礎(chǔ)

C語言程序設(shè)計(jì)課程由于其學(xué)科自身的特點(diǎn),需要在計(jì)算機(jī)上調(diào)試程序,

所以要求學(xué)生具有一定的計(jì)算機(jī)操作知識(shí),如:開關(guān)機(jī)、鍵盤和鼠標(biāo)的使用、文

件的建立與查找、常用軟件的使用等。

2、良好的C語言程序設(shè)計(jì)認(rèn)知結(jié)構(gòu)

認(rèn)知結(jié)構(gòu)就是學(xué)生頭腦里的知識(shí)結(jié)構(gòu),是學(xué)習(xí)者觀念的全部內(nèi)容和組織。

奧蘇伯爾的認(rèn)知結(jié)構(gòu)理論是針對(duì)新學(xué)習(xí)內(nèi)容的影響(即遷移)提出的,良好的認(rèn)

知結(jié)構(gòu)有利于知識(shí)的提取和正向遷移。C語言程序設(shè)計(jì)探究教學(xué)強(qiáng)調(diào)在已有知

識(shí)經(jīng)驗(yàn)上的主動(dòng)建構(gòu),面對(duì)新的問題和任務(wù),需要學(xué)生及時(shí)從頭腦中提取信息,

建立新舊知識(shí)間的聯(lián)系,在已有C語言程序設(shè)計(jì)知識(shí)的基礎(chǔ)上思考解決新問題

的辦法,并試圖將新知識(shí)納入自己的認(rèn)知結(jié)構(gòu)中。

3 、良好的探究環(huán)境

良好的探究環(huán)境是學(xué)生順利進(jìn)行探究的保證,至少包含兩方面的內(nèi)容:(1)

要有充足的探究時(shí)間和靈活的探究條件。探究時(shí)間應(yīng)該根據(jù)學(xué)習(xí)任務(wù)進(jìn)行合理

安排,應(yīng)該考慮到學(xué)生假設(shè)錯(cuò)誤時(shí)所耽誤的時(shí)間以及討論交流所需要的時(shí)間。

探究教學(xué)中可能需要查閱大量的資料,教師還應(yīng)該準(zhǔn)備書籍、網(wǎng)絡(luò)等輔助資源。

(2)學(xué)生在探究學(xué)習(xí)的時(shí)候不能有太多壓力,不同的學(xué)生由于其自身的因素不可

能以相同的速度學(xué)習(xí),所以教師在進(jìn)行評(píng)價(jià)的時(shí)候也應(yīng)該因人而異,應(yīng)該為每

個(gè)學(xué)生提供充分的思考機(jī)會(huì)和時(shí)間,讓每個(gè)學(xué)生都能以自己的進(jìn)度進(jìn)行探索,

并在此過程中感受到樂趣。

三、C語言程序設(shè)計(jì)探究教學(xué)情境的創(chuàng)設(shè)

心理學(xué)研究表明,恰當(dāng)、適宜的環(huán)境能有效激發(fā)人的熱烈情緒,提高活動(dòng)的

質(zhì)量和效果。教學(xué)情境是指教師人為創(chuàng)造的“典型場(chǎng)景”,創(chuàng)設(shè)目的在于引出教

學(xué)任務(wù),將學(xué)生的注意力吸引到學(xué)習(xí)任務(wù)中來。教師把將要學(xué)習(xí)的C語言程序

設(shè)計(jì)知識(shí)通過一定的情境呈現(xiàn)給學(xué)生,使得學(xué)生認(rèn)知結(jié)構(gòu)與周圍環(huán)境不平衡,

引起他們對(duì)學(xué)習(xí)目標(biāo)的注意和興趣,并通過探究活動(dòng)把學(xué)生過去的活動(dòng)和將來

的活動(dòng)聯(lián)系在心理學(xué)研究表明,恰當(dāng)、適宜的環(huán)境能有效激發(fā)人的熱烈情緒,提

高活動(dòng)的質(zhì)量和效果。教學(xué)情境是指教師人為創(chuàng)造的“典型場(chǎng)景”,創(chuàng)設(shè)目的在

于引出教學(xué)任務(wù),將學(xué)生的注意力吸引到學(xué)習(xí)任務(wù)中來。教師把將要學(xué)習(xí)的C

語言程序設(shè)計(jì)知識(shí)通過一定的情境呈現(xiàn)給學(xué)生,使得學(xué)生認(rèn)知結(jié)構(gòu)與周圍環(huán)境

不平衡,引起他們對(duì)學(xué)習(xí)目標(biāo)的注意和興趣,并通過探究活動(dòng)把學(xué)生過去的活

動(dòng)和將來的活動(dòng)聯(lián)系在一體。探究教學(xué)情境的創(chuàng)設(shè)應(yīng)做到:(1)創(chuàng)設(shè)的情境是為

C語言程序設(shè)計(jì)教學(xué)服務(wù)的,要以C語言程序設(shè)計(jì)探究教學(xué)目標(biāo)為依據(jù)。(2)探究

情境要接近學(xué)生的真實(shí)生活經(jīng)驗(yàn),能夠吸引學(xué)生的注意力,激發(fā)他們的認(rèn)知沖

突和求知欲。(3)學(xué)生在情境中能夠感覺到問題的存在,自然地將新舊知識(shí)聯(lián)系

起來。(4)情境中必須包含學(xué)生未知的新內(nèi)容,而且是能夠通過探究掌握的。

四、C語言程序設(shè)計(jì)課程中的探究形式

C語言程序設(shè)計(jì)課程中開展探究教學(xué)主要有4種形式:探究性提問、探究性

討論、探究性演示和探究性實(shí)驗(yàn)。這4種形式是相輔相承的,而不是孤立存在的,

在C語言程序設(shè)計(jì)探究教學(xué)中,需要用到多種形式來構(gòu)成一個(gè)完整的探究教學(xué)

過程。C語言程序設(shè)計(jì)探究教學(xué)通常都是由探究性提問開始,然后進(jìn)行探究性

討論、探究性演示或探究性實(shí)驗(yàn);也可能從探究性演示或探究性實(shí)驗(yàn)開始,在演

示或?qū)嶒?yàn)的過程中發(fā)現(xiàn)問題,再進(jìn)行探究性討論。在實(shí)際教學(xué)過程中,要根據(jù)學(xué)

習(xí)內(nèi)容和課堂情況靈活地選用這些形式。

五、C語言程序設(shè)計(jì)探究教學(xué)評(píng)價(jià)

教學(xué)評(píng)價(jià)指依據(jù)一定的標(biāo)準(zhǔn),通過各種策略和相關(guān)資料的收集,對(duì)教學(xué)活

動(dòng)及其效果進(jìn)行客觀衡量和科學(xué)判定的系統(tǒng)過程。C語言程序設(shè)計(jì)探究教學(xué)評(píng)

價(jià)是對(duì)C語言程序設(shè)計(jì)探究教學(xué)過程及其影響的測(cè)量、分析和評(píng)定,評(píng)價(jià)中我

們更關(guān)注學(xué)生學(xué)習(xí)和成長的過程,尋找適合學(xué)生發(fā)展的學(xué)習(xí)方式,滿足學(xué)生知

識(shí)和能力發(fā)展的需要。評(píng)價(jià)對(duì)探究教學(xué)的積極作用是很明顯的,但是如果評(píng)價(jià)

指標(biāo)制定不合理,或者評(píng)價(jià)方法的選用、評(píng)價(jià)結(jié)果的表述不當(dāng),不僅不能達(dá)到預(yù)

期效果,還會(huì)對(duì)學(xué)生的C語言程序設(shè)計(jì)學(xué)習(xí)產(chǎn)生消極影響。

參考文獻(xiàn)

[1] 《基礎(chǔ)教育課程改革綱要(試行)》教育部文件,教基[2001]17號(hào).

[2] 保羅 朗格朗.終身教育引論瞰[M].北京:中國對(duì)外翻譯出版公司,1985,

p15~31.

[3] 聯(lián)合國教科文組織.學(xué)會(huì)生存——教育世界的今天和明天[M].上海:

上海譯文出.

版社,1979,p2.

[4] 張大均。教育心理學(xué)[M].北京:人民教育出版社,2005,p68--71.

[5] 靳玉樂.探究教學(xué)論[M].重慶:西南師范大學(xué)出版社,200l.

作者簡介

鐘實(shí)(1986-02)男、民族(漢),籍貫(江西省南昌市),2010畢業(yè)于浙江大學(xué)

第2篇

關(guān)鍵詞:教學(xué)內(nèi)容;教學(xué)手段;教學(xué)方法;考核方式

C語言是早期最經(jīng)典、最強(qiáng)大的面向過程的程序設(shè)計(jì)語言之一。雖然現(xiàn)在面向過程已經(jīng)全面轉(zhuǎn)向面向?qū)ο螅荂本身的中級(jí)語言的設(shè)計(jì)理念以及對(duì)現(xiàn)有VC/C#等語言的深刻影響,使其至今仍是程序設(shè)計(jì)入門的首選語言,也是工科院校計(jì)算機(jī)專業(yè)學(xué)生接觸的第一門程序設(shè)計(jì)語言。對(duì)于計(jì)算機(jī)類專業(yè)學(xué)生來說,一旦掌握了C語言,就可以較為輕松地學(xué)習(xí)其他任何一種程序設(shè)計(jì)語言,為后續(xù)的面向?qū)ο蟪绦蛟O(shè)計(jì)以及Java程序設(shè)計(jì)等語言的學(xué)習(xí)打下基礎(chǔ);對(duì)于其他非計(jì)算機(jī)專業(yè)的工科學(xué)生來說,比如電子、機(jī)電專業(yè)來說,該課程為學(xué)生用計(jì)算機(jī)編程解決實(shí)際問題提供了方法,是學(xué)習(xí)單片機(jī)技術(shù)教學(xué)的基礎(chǔ)和重要工具。

一、C語言教學(xué)中面臨的問題

C語言程序設(shè)計(jì)是一門基于dos操作系統(tǒng)下的面向過程的程序設(shè)計(jì)語言,隨著面向?qū)ο笳Z言的開發(fā),C語言在界面交互性上遜色不少,作品上也不如Flash、三維動(dòng)畫效果吸引眼球,難學(xué)、難懂、難以應(yīng)用的課程,對(duì)學(xué)生越來越缺乏吸引力。針對(duì)這種狀況筆者認(rèn)為,更新教育觀念、探索新的教學(xué)模式才是根本出路。筆者根據(jù)多年的教學(xué)經(jīng)驗(yàn),對(duì)C語言程序設(shè)計(jì)課程從教學(xué)內(nèi)容、教學(xué)手段、教學(xué)方法、考核方法方面進(jìn)行了一系列的創(chuàng)新改革。教學(xué)內(nèi)容主要解決如何調(diào)動(dòng)學(xué)生積極性,激發(fā)學(xué)生創(chuàng)新能力,如何提高學(xué)生的創(chuàng)新能力、實(shí)踐能力、研究能力、發(fā)現(xiàn)問題和解決問題能力等綜合素質(zhì);教學(xué)方法主要解決如何實(shí)現(xiàn)“以人為本”,分層次教育,如何通過引導(dǎo)、啟發(fā)等方法,激發(fā)學(xué)生的發(fā)散性思維。同時(shí)要利用目前課堂和實(shí)驗(yàn)教學(xué)在培養(yǎng)學(xué)生創(chuàng)新能力和實(shí)踐能力方面的優(yōu)點(diǎn),利用大學(xué)生實(shí)訓(xùn)基地,為學(xué)生的創(chuàng)新和實(shí)踐能力的鍛煉和培養(yǎng)提供一個(gè)良好的平臺(tái)。

二、教學(xué)內(nèi)容的創(chuàng)新

課程內(nèi)容的選取與組織是課程教學(xué)改革的基礎(chǔ)。人才培養(yǎng)方案對(duì)C語言程序設(shè)計(jì)教學(xué)內(nèi)容進(jìn)行重新整合,把課程學(xué)習(xí)劃分成培養(yǎng)學(xué)生的基本程序設(shè)計(jì)能力和培養(yǎng)學(xué)生的專業(yè)程序設(shè)計(jì)能力兩個(gè)階段。

第一階段安排在大一第一學(xué)期,主要針對(duì)沒有程序設(shè)計(jì)經(jīng)驗(yàn)的大一新生,重點(diǎn)講授C語言的基本知識(shí),包括三種基本結(jié)構(gòu)、數(shù)組、函數(shù)的概念。在第一階段教學(xué)中,筆者采用案例教學(xué)方法結(jié)合具體的程序?qū)嵗瑒?chuàng)設(shè)情境,引導(dǎo)學(xué)生自己總結(jié)掌握C語言的基本語法和程序設(shè)計(jì)的基本方法。第一階段的學(xué)習(xí)結(jié)束的時(shí)候,學(xué)生可以具備基本的程序設(shè)計(jì)能力,獨(dú)立編寫具有初等難度、幾十行的程序,并且能夠較順利地完成程序調(diào)試與測(cè)試。第二階段教學(xué)放在大一第二學(xué)期初,針對(duì)具備基礎(chǔ)程序設(shè)計(jì)能力的學(xué)生,重點(diǎn)培養(yǎng)學(xué)生的專業(yè)程序設(shè)計(jì)能力。在第二階段的教學(xué)中,以學(xué)生為主體、以教師為引導(dǎo),采用國家火炬計(jì)劃河北省軟件人才工程實(shí)訓(xùn)課程,使學(xué)生融會(huì)貫通所學(xué)知識(shí),完成一個(gè)具體的項(xiàng)目,以達(dá)到提高學(xué)生程序開發(fā)能力的目的。迄今為止,學(xué)生完成的項(xiàng)目包括“銀行儲(chǔ)蓄管理系統(tǒng)”“彩票信息查詢系統(tǒng)”。教學(xué)實(shí)踐證明,這種理論和實(shí)踐技能并行的教學(xué)模式,更加有助于學(xué)生的創(chuàng)新能力的提高,使學(xué)生在不斷實(shí)踐中掌握技能,在技能學(xué)習(xí)中提高基礎(chǔ)理論。

三、教學(xué)手段的創(chuàng)新

在學(xué)習(xí)過程中除了發(fā)揮教師的引導(dǎo)作用,還需要充分調(diào)動(dòng)學(xué)生的參與主動(dòng)性。在授課期間靈活采用多種教學(xué)手段,如:自學(xué)、演示、對(duì)比、課堂提問、學(xué)生演練和討論等,通過不同方法,尋找創(chuàng)意思維“契機(jī)”,安排創(chuàng)意鋪墊內(nèi)容,培育學(xué)生的創(chuàng)意萌芽,營造創(chuàng)意環(huán)境,引發(fā)學(xué)生爭鳴,為學(xué)生提供更多的思維空間,誘發(fā)學(xué)生的思維靈感。例如,在教學(xué)中講解“循環(huán)結(jié)構(gòu)的循環(huán)嵌套”的時(shí)候,提出馬克思手稿中的數(shù)學(xué)題的案例:偉大的思想家馬克思的手稿中有這樣一道有趣的數(shù)學(xué)題:有30個(gè)人,其中有男人、女人和小孩。他們?cè)谝患绎堭^中吃飯,共花費(fèi)50先令。如果每個(gè)男人吃飯要花3先令,女人要花2先令,每個(gè)小孩要花1先令,問男人、女人、小孩各多少人?先提出問題,引導(dǎo)學(xué)生分析、討論案例,提問學(xué)生運(yùn)用數(shù)學(xué)知識(shí)完成案例提出的問題需要進(jìn)行哪些操作,這樣學(xué)生就會(huì)比較有興趣,課堂氣氛就活躍起來。然后幫助學(xué)生從案例分析中理解并掌握什么是多重循環(huán),并且如何使用雙重循環(huán)解決問題,最終完成程序的編寫。

在學(xué)習(xí)的第二階段采用開放式訓(xùn)練教育方式,利用專題設(shè)計(jì)和課外指導(dǎo)方式,鼓勵(lì)學(xué)生課外自主進(jìn)行訓(xùn)練。如:完成的項(xiàng)目“彩票信息查詢系統(tǒng)”,教師提出設(shè)計(jì)方案,學(xué)生完成基本功能以后,自己可以對(duì)其他功能進(jìn)行完善。

四、教學(xué)方法的創(chuàng)新

課程每個(gè)章節(jié)內(nèi)容結(jié)構(gòu)主要由三部分組成:

知識(shí)點(diǎn):介紹本章需要掌握的知識(shí)或技術(shù)。

應(yīng)用案例:介紹本章知識(shí)應(yīng)用的案例。

創(chuàng)新訓(xùn)練:針對(duì)具體的問題,應(yīng)用本章技術(shù)來完成知識(shí)點(diǎn)的應(yīng)用。

在整個(gè)教學(xué)過程中,教師采用框架式教學(xué),像建筑工程師修建筑一樣,先采用精講的方式,讓學(xué)生建立整門課程的知識(shí)框架;接著通過案例教學(xué)、項(xiàng)目式教學(xué)等多種教學(xué)方式,讓學(xué)生逐步去進(jìn)行細(xì)節(jié)知識(shí)點(diǎn)的填充;最后通過綜合訓(xùn)練方式,完成整門課程的學(xué)習(xí)。

例如,在講解C語言程序設(shè)計(jì)中的函數(shù)時(shí),搭建出例如綜合排序等程序的框架,給學(xué)生留出函數(shù),讓學(xué)生自由開拓思想,獨(dú)立完成一些小型實(shí)例的編程,經(jīng)過具體知識(shí)點(diǎn)的訓(xùn)練后,還要重點(diǎn)進(jìn)行綜合知識(shí)的應(yīng)用訓(xùn)練,開展一系列的創(chuàng)新應(yīng)用,以達(dá)到知識(shí)綜合運(yùn)用和培養(yǎng)創(chuàng)新能力的目的。

五、考核方式的創(chuàng)新

傳統(tǒng)的C語言程序設(shè)計(jì)考核模式一般以標(biāo)準(zhǔn)化的筆試題為主,這種考核方式側(cè)重語法知識(shí)的考核,忽視編程實(shí)踐能力的培養(yǎng)。為此,筆者改革傳統(tǒng)的考核方式,將考核分為平時(shí)實(shí)驗(yàn)和期末考核兩部分。平時(shí)實(shí)驗(yàn)成績考核的是學(xué)生每一章知識(shí),實(shí)訓(xùn)作業(yè)就是在每一章節(jié)結(jié)束的時(shí)候,布置相關(guān)的習(xí)題,學(xué)生利用業(yè)余時(shí)間編程,并且在實(shí)訓(xùn)期間進(jìn)行調(diào)試,調(diào)試成功后上傳到服務(wù)器上。期末考核成績采用的是教研室開發(fā)的上機(jī)考試系統(tǒng)。上機(jī)考試系統(tǒng)模擬C語言二級(jí)考試建立了知識(shí)面齊全、題量充足、難易度合理的試題庫,采取隨機(jī)抽題的形式重點(diǎn)考查學(xué)生的程序設(shè)計(jì)能力和程序調(diào)試能力。這種考核方式督促學(xué)生在平時(shí)學(xué)習(xí)中加強(qiáng)對(duì)編程舉一反三的實(shí)踐環(huán)節(jié)。實(shí)踐證明,這樣不僅能有效培養(yǎng)學(xué)生的實(shí)踐編程能力,還激發(fā)了學(xué)生動(dòng)手實(shí)踐解決問題的興趣。

總之,經(jīng)過不斷的摸索與實(shí)踐,通過以上的教學(xué)方法與教學(xué)手段的改革和實(shí)踐,不僅提高了學(xué)生的學(xué)習(xí)興趣,讓學(xué)生從枯燥無味的語言學(xué)習(xí)中解放出來,從被動(dòng)學(xué)習(xí)走向主動(dòng)學(xué)習(xí),同時(shí)也培養(yǎng)了學(xué)生分析問題、解決實(shí)際問題的能力,充分發(fā)掘了學(xué)生的創(chuàng)造潛能,鍛煉了創(chuàng)新和協(xié)作精神。

參考文獻(xiàn):

[1]郭芹.對(duì)高職高專計(jì)算機(jī)專業(yè)程序設(shè)計(jì)教學(xué)的思考[J].中國科技信息,2008(1).

第3篇

關(guān)鍵詞:C語言程序設(shè)計(jì);教學(xué)改革;算法

中圖分類號(hào):TP312 文獻(xiàn)標(biāo)識(shí)碼:A DoI: 10.3969/j.issn.1003-6970.2012.05.044

The C Programming Language Teaching Reform and Practice

waNG Zhong-ying

(Computer science department of Shangluo College, Shangluo 726000, China)

【Abstract】C language as human-computer interaction is an important tool, in the IT field is play a decisive role; at the same time, c language is normally It students high-level programming languages, their master degree directly affects the student program literacy and learning interest improve. according to the long term c language program design course teaching experience, combined with the new teaching environment, the paper points out that in the course of the reform in the teaching of some misunderstanding, in view of these problems and how to improve the effect of teaching put forward many suggestions.

【Key words】c language programming design; teaching reform; algorithm

0 引 言

C語言程序設(shè)計(jì)課程是計(jì)算機(jī)科學(xué)與技術(shù)和軟件工程等IT類專業(yè)的專業(yè)必修課程,也是《數(shù)據(jù)結(jié)構(gòu)》、《算法設(shè)計(jì)與分析》等其專業(yè)核心課程的先修課程。C語言程序設(shè)計(jì)的水平在很大程度上決定了學(xué)生專業(yè)基礎(chǔ)知識(shí)的掌握是否扎實(shí),直接影響到后續(xù)課程的學(xué)習(xí)效果和專業(yè)興趣的培養(yǎng)。為了提高學(xué)生的程序設(shè)計(jì)素質(zhì),為后續(xù)專業(yè)課程的學(xué)習(xí)打下基礎(chǔ),筆者結(jié)合自己長期C語言程序設(shè)計(jì)課程教學(xué)的體會(huì),結(jié)合新的教學(xué)環(huán)境,指出了該門課程教學(xué)改革中的一些誤區(qū),并對(duì)如何提高教學(xué)效果提出了許多可行的建議。

1 C語言程序設(shè)計(jì)教學(xué)中的幾個(gè)誤區(qū)

1.1 對(duì)C語言程序教學(xué)的重視程度降低

許多人認(rèn)為,JAVA、C#等目前行業(yè)內(nèi)普遍采用的高級(jí)程序設(shè)計(jì)語言,相對(duì)來說簡單易學(xué),源程序可讀性強(qiáng),又有功能強(qiáng)大的集成編輯環(huán)境的支持,有利于讓學(xué)生迅速開發(fā)項(xiàng)目,而C語言程序語法復(fù)雜,調(diào)試?yán)щy,開發(fā)較大規(guī)模的應(yīng)用程序比較麻煩,所以在人才培養(yǎng)的課程體系中,采用JAVA、C#等高級(jí)語言來代替?zhèn)鹘y(tǒng)的C語言程序。筆者認(rèn)為,這是一種急功近利的表現(xiàn)。首先是C語言程序的功能同樣強(qiáng)大,在較大規(guī)模的應(yīng)用程序尤其是系統(tǒng)程序的開發(fā)中有出色的表現(xiàn),具有易編寫程序操縱系統(tǒng)底層的優(yōu)勢(shì),在嵌入式編程中具有不可替代的地位。TIOBE近日公布的2012年4月份的編程語言排行榜中,C語言再次超越JAVA語言重新回到了編程語言的王者地位,這說明具有30多年歷史的C語言依然是歷久彌新[1]。

1.1 教學(xué)學(xué)時(shí)過度精減

在近幾年的高校專業(yè)教學(xué)改革中,許多院校對(duì)課程課時(shí)進(jìn)行了精減。在這個(gè)過程中,我們發(fā)現(xiàn)有的學(xué)校缺乏科學(xué)規(guī)劃,存在許多不合理的地方,如對(duì)C語言程序設(shè)計(jì)課程的學(xué)時(shí)過分減少就是一個(gè)例子。這種現(xiàn)象不僅對(duì)提高學(xué)生能力的沒有起到積極作用,反而影響了學(xué)生專業(yè)基礎(chǔ)能力的培養(yǎng)。C語言程序設(shè)計(jì)是IT專業(yè)學(xué)生的第一門程序設(shè)計(jì)課程,不僅培養(yǎng)學(xué)生的對(duì)C語言本身的掌握,同時(shí)還需要培養(yǎng)學(xué)生的程序設(shè)計(jì)思維以及培養(yǎng)學(xué)生對(duì)IT行業(yè)的興趣。在這一階段,沒有老師充分的指導(dǎo)往往是不夠的。如果學(xué)個(gè)一知半解,會(huì)影響到后續(xù)課程如數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)等學(xué)習(xí),進(jìn)而失去IT行業(yè)的興趣。

對(duì)于C語言程序設(shè)計(jì)課程的學(xué)時(shí)數(shù),不同的院校應(yīng)該根據(jù)學(xué)生的實(shí)際情況來確定,對(duì)學(xué)習(xí)能力強(qiáng)的學(xué)生可以精減課內(nèi)學(xué)時(shí),采用案例驅(qū)動(dòng)、任務(wù)驅(qū)動(dòng)的方式指導(dǎo)學(xué)生在課外自主學(xué)習(xí);對(duì)于學(xué)習(xí)能力一般的學(xué)生,則需要教師多指導(dǎo)。總之,無論對(duì)于哪類學(xué)生,只要是IT類相關(guān)專業(yè),都需要讓學(xué)生較扎實(shí)地掌握這門課程。

第4篇

關(guān)鍵詞:《C語言程序設(shè)計(jì)》課程;教與學(xué);方法;探討

中圖分類號(hào):G642文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2011)15-3610-02

《C語言程序設(shè)計(jì)》是目前世界上十分流行、使用最為廣泛的高級(jí)程序設(shè)計(jì)語言,也是計(jì)算機(jī)軟、硬件相關(guān)專業(yè)的基礎(chǔ)課程;并且學(xué)生《C語言程序設(shè)計(jì)》能力的強(qiáng)弱,直接影響他們后續(xù)專業(yè)基礎(chǔ)課和專業(yè)課的學(xué)習(xí)。該課程在計(jì)算機(jī)教學(xué)中的重要性是不言而喻的。

1 高職院校《C語言程序設(shè)計(jì)》課程教與學(xué)的現(xiàn)狀

在從事計(jì)算機(jī)及相關(guān)專業(yè)基礎(chǔ)課的教學(xué)過程中,發(fā)現(xiàn)語言課是學(xué)生學(xué)得最差、老師教得最辛苦的一門課程。根據(jù)專業(yè)教學(xué)計(jì)劃,計(jì)算機(jī)應(yīng)用、計(jì)算機(jī)網(wǎng)絡(luò)、應(yīng)用電子等專業(yè)開設(shè)了《C語言程序設(shè)計(jì)》課程,一般設(shè)置在二年級(jí)。從課程設(shè)置的角度來說,經(jīng)過知識(shí)的積累和思維的鍛煉,學(xué)生在這個(gè)階段應(yīng)該具備了學(xué)習(xí)一門基礎(chǔ)語言課的能力。按正常教學(xué)規(guī)律來講,在教師與學(xué)生的共同努力下是可以學(xué)好這門課程的,但實(shí)際情況確不盡人意。從多年實(shí)際教學(xué)經(jīng)歷來看,制約因素主要有兩點(diǎn):一是學(xué)生的數(shù)學(xué)基礎(chǔ)差,而教材編排和例題分析與數(shù)學(xué)知識(shí)聯(lián)系過于緊密,導(dǎo)致學(xué)生覺得難學(xué);二是因?yàn)橛?jì)算機(jī)編程使用英文,一些學(xué)生因英語學(xué)習(xí)的失敗心理,覺得計(jì)算機(jī)語言是門高深莫測(cè)的課程,還沒有上課就認(rèn)為難學(xué),而職業(yè)院校的部分學(xué)生學(xué)習(xí)不刻苦的現(xiàn)象,進(jìn)一步導(dǎo)致教學(xué)過程中存在更多的障礙。針對(duì)這些情況,我認(rèn)為要學(xué)好《C語言程序設(shè)計(jì)》課程,克服這兩個(gè)障礙勢(shì)在必然。

2 教師如何上好《C語言程序設(shè)計(jì)》課程

2.1 仔細(xì)領(lǐng)會(huì)教學(xué)大綱,全面深入教材改革

教師深入分析教學(xué)大綱,在全面了解學(xué)生的數(shù)學(xué)基礎(chǔ)知識(shí)狀況的前提下,根據(jù)大綱制定好教學(xué)計(jì)劃。將教材中涉及到學(xué)生未掌握的數(shù)學(xué)知識(shí)方面的例題進(jìn)行更換,避免因數(shù)學(xué)知識(shí)問題形成教學(xué)障礙。例如在講多分支條件語句的應(yīng)用中,教材普遍采用一元二次方程求解為例來說明,但一元二次方程的求解對(duì)于有些學(xué)生來說,虛數(shù)是一個(gè)知識(shí)障礙,可以想象得到,他們會(huì)學(xué)得一頭霧水,教學(xué)效果自然就差。還有“輸入三角形的三條邊長,求三角形的面積。”的例題中,先要判斷三條邊是否能夠組成三角形,再利用海輪公式計(jì)算面積,但海輪公式大部分學(xué)生都不清楚。這些例題就形成一個(gè)本末倒置的結(jié)果,為什么不選擇其它的例題來分析呢?在后續(xù)的例題中,“根據(jù)成績分?jǐn)?shù),輸出等級(jí)。”,問題適當(dāng)?shù)睾喕Ч秃懿诲e(cuò),還可以和后續(xù)的SWITCH語句結(jié)合起來教學(xué)。選取的例題除了有代表性外,涉及到的知識(shí)點(diǎn)也不可忽視,要記住,我們是在學(xué)習(xí)《C語言程序設(shè)計(jì)》,不是在學(xué)習(xí)數(shù)學(xué),主次要分明。

2.2 精心準(zhǔn)備,加強(qiáng)師生互動(dòng)

課前要充分備課,準(zhǔn)備好教學(xué)的內(nèi)容和學(xué)生的練習(xí),做到有的放矢。例如在講到“自加++”與“自減--”運(yùn)算符時(shí),我們著重講自加。例題為:int a,b=5;分析:a=++b;a=b++;a=++b++;運(yùn)算后a,b的值。經(jīng)過分析后,讓學(xué)生掌握其規(guī)律:運(yùn)算符在變量前是先做自加操作,再取其值完成后續(xù)運(yùn)算;而運(yùn)算符在變量后面則是先取其值進(jìn)行運(yùn)算,再完成自加操作。得出這個(gè)結(jié)論后,提示學(xué)生自減的運(yùn)算也是相似的,要求學(xué)生分析將上述例題的自加改為自減后a,b的值,這樣學(xué)生學(xué)習(xí)起來針對(duì)性就比較強(qiáng)。為什么要設(shè)置上面三個(gè)例題呢,上過《C語言程序設(shè)計(jì)》課程的教師自然知道每道題的代表性。最后可以用綜合題加強(qiáng)這兩個(gè)運(yùn)算符的運(yùn)用,采用如下練習(xí):int a=4,b=5;分析a=++a-b;b=--a++-b++;運(yùn)算后a,b的值。學(xué)生完成這道綜合題后,對(duì)自加與自減的運(yùn)算及使用自然清晰明了。

2.3 充分利用學(xué)生的成功心理,培養(yǎng)學(xué)習(xí)興趣

我們?cè)?jīng)訓(xùn)練一些學(xué)生參加全市編程比賽(用Visual FoxPro編寫),開始學(xué)生也是基本一無所知,我們只好從基本函數(shù)、語句開始上課。經(jīng)歷了一個(gè)多月時(shí)間,他們沒有獨(dú)立地完成任何一個(gè)程序的編寫。后來不再給他們?nèi)魏翁崾荆亲屗麄冏约核伎迹袝r(shí)幾天后才給他們分析。其中有3名同學(xué),經(jīng)過了一周時(shí)間的查資料、上機(jī)調(diào)試,終于完成了一個(gè)圖書管理系統(tǒng)的基本模塊,并找到了成功感。自從那以后,他們能非常深入的分析我們布置的練習(xí)并經(jīng)過反復(fù)地調(diào)試,找到答案,訓(xùn)練效果得到很大地提高。從中我們看到創(chuàng)造一個(gè)成功的心理,學(xué)生學(xué)習(xí)的興趣就會(huì)自然提高,學(xué)習(xí)起來就會(huì)積極主動(dòng),效果當(dāng)然比填鴨式教學(xué)好得多。

在平時(shí)的教學(xué)中,我們也應(yīng)重視這一點(diǎn),特別是對(duì)學(xué)習(xí)積極性較高的學(xué)生更是如此,今年的《C語言程序設(shè)計(jì)》課程實(shí)習(xí)中,這一點(diǎn)得到了充分體現(xiàn)。很多練習(xí)我都不先分析,而是讓他們自己獨(dú)立分析、調(diào)試,最后才小結(jié)。大部分學(xué)生兩周實(shí)習(xí)完成后,總結(jié)說:“在這兩周的實(shí)習(xí)中,所學(xué)到的知識(shí)比前半學(xué)期學(xué)到的知識(shí)還多”。其實(shí),我想并不是他們?cè)谶@個(gè)過程中學(xué)到了很多知識(shí),關(guān)鍵是他們經(jīng)過獨(dú)立地思考分析,完成了程序的編寫,獲得了充分的成功感!有了成功感,就有了學(xué)習(xí)興趣,興趣是最好的老師。學(xué)生在學(xué)習(xí)中能獲得快樂,學(xué)習(xí)過程自然就會(huì)輕松很多。

2.4 讓學(xué)生學(xué)以致用,轉(zhuǎn)變學(xué)習(xí)動(dòng)機(jī)

在我初次上《C語言程序設(shè)計(jì)》這門課程時(shí),有一名學(xué)生問:學(xué)了這門課有什么用?當(dāng)時(shí)問得我張目結(jié)舌、啞口無言,不知如何回答他才好。后來想:我們的學(xué)生是職教性質(zhì)的,所以對(duì)他們說學(xué)了這門課你可以去當(dāng)程序員,同時(shí)為以后學(xué)習(xí)其他語言課打下基礎(chǔ)等,這些對(duì)學(xué)生來說有點(diǎn)和實(shí)際不符。教他們這門課,應(yīng)該讓學(xué)生掌握一些解決實(shí)際問題的能力,才會(huì)促進(jìn)他們努力學(xué)習(xí),毫無目的地學(xué)習(xí)自然沒動(dòng)力。認(rèn)識(shí)到這個(gè)問題的嚴(yán)重性后,在后面的教學(xué)中,我把平時(shí)遇到的一些問題結(jié)合起來進(jìn)行教學(xué),讓他們知道掌握某些知識(shí)就能解決相關(guān)的一些問題,讓他們?cè)趯W(xué)習(xí)過程中覺得學(xué)習(xí)與實(shí)際生活很近,這樣對(duì)《C語言程序設(shè)計(jì)》課程的認(rèn)識(shí)就沒那么抽象了。如在講數(shù)組時(shí),就以統(tǒng)計(jì)期中成績情況為例,讓他們完成:每個(gè)學(xué)生的總分、平均分的計(jì)算、排名情況;及每門課程的總分、平均分、最高分、最低分、合格率、優(yōu)秀率的計(jì)算和成績段分析,這既學(xué)好了數(shù)組的知識(shí),還充分運(yùn)用了前面章節(jié)的一些相關(guān)內(nèi)容,同時(shí),學(xué)習(xí)該課程的積極性也調(diào)動(dòng)起來了。

2.5 讓學(xué)生克服畏難心理,理性認(rèn)識(shí)計(jì)算機(jī)編程語言

我們的學(xué)生大多在學(xué)習(xí)前就有畏難的情緒,覺得《C語言程序設(shè)計(jì)》課程難學(xué)、學(xué)不會(huì),造成這種情況主要是對(duì)計(jì)算機(jī)編程語言不了解。另外就是有些學(xué)生英語學(xué)得差,看到計(jì)算機(jī)編程使用英文,就未學(xué)先棄了。其實(shí)學(xué)習(xí)語言并沒有他們想象的那么難,英語差對(duì)學(xué)習(xí)計(jì)算機(jī)語言影響不大。比如學(xué)習(xí)該課程,真正要記的關(guān)鍵字只有32個(gè),語法也不復(fù)雜,只要大家不帶著畏難的心理,一定能學(xué)好的。作為《C語言程序設(shè)計(jì)》任課教師,在上課前,做好學(xué)生的畏難心理工作,會(huì)在今后的教學(xué)工作中起到事半功倍的效果。

2.6 從例題中提取精華,讓學(xué)生掌握一些代表性的編程方法

這一點(diǎn)其實(shí)和學(xué)習(xí)數(shù)學(xué)一樣,不管是教材中的例題還是教師另外安排的練習(xí),一般來說都比較具有代表性,代表了某類問題的解決辦法。因此,學(xué)生在學(xué)習(xí)中不要僅僅滿足于理解或掌握這些題目的解決方法,還要進(jìn)一步將這些具有代表性的解決辦法提煉出來,為解決相似問題提供參考。比如說在講數(shù)組排序方法的應(yīng)用時(shí),常會(huì)講“冒泡法”和“選擇法”兩種排序方法,其實(shí),作為一般的應(yīng)用,不管是哪種排序方法都比較好,只要是排序的問題,使用其中的一種(或加以變換)都能解決問題的。

3 教師如何引導(dǎo)學(xué)生學(xué)好《C語言程序設(shè)計(jì)》課程

教學(xué)是一個(gè)相互配合的過程,涉及到教師如何教、學(xué)生如何學(xué)的問題,這兩個(gè)環(huán)節(jié)相輔相成、缺一不可。學(xué)生如何學(xué)也起著舉足輕重的作用,而學(xué)生如何學(xué)與教師的正確引導(dǎo)是密不可分的,下面就如何引導(dǎo)的問題談幾點(diǎn)看法。

3.1 強(qiáng)調(diào)該課程前四章的重要性,要打好扎實(shí)的基礎(chǔ)

計(jì)算機(jī)語言的學(xué)習(xí),真正要記住的知識(shí)不多。如該課程,只要學(xué)好前四章:標(biāo)識(shí)符、運(yùn)算符與表達(dá)式、順序結(jié)構(gòu)程序設(shè)計(jì)、程序調(diào)試方法等,并打下扎實(shí)的基礎(chǔ),后面的學(xué)習(xí)就會(huì)輕松得多。我們?cè)诮虒W(xué)中經(jīng)常遇到這種情況,學(xué)到后面,有些學(xué)生連printf()、scanf()、putchar()、getchar()等常用函數(shù)的使用都忘了,這些最基本的知識(shí)都不能熟練掌握,又如何學(xué)習(xí)后面的內(nèi)容呢?

3.2 讓學(xué)生改變學(xué)習(xí)方式,為學(xué)生多動(dòng)腦、多分析、多練習(xí)提供條件

據(jù)了解,有些學(xué)生在初中或高中的學(xué)習(xí)過程中,都存在著較多填鴨式的教學(xué)模式,造成學(xué)生在學(xué)習(xí)過程中不靈活、不動(dòng)腦、不善于分析問題,只會(huì)生搬硬套、死記硬背的方法學(xué)習(xí),這種情況對(duì)于學(xué)習(xí)計(jì)算機(jī)來說是一個(gè)最大的障礙。說實(shí)在的,如果想要學(xué)好、用好計(jì)算機(jī),沒有一定的悟性,并且不能融會(huì)貫通、舉一反三是不行的。因此,在學(xué)習(xí)中不要滿足于教師教了多少,而應(yīng)該多動(dòng)腦筋,對(duì)遇到的問題多分析、多思考,在計(jì)算機(jī)上多練習(xí)、多操作,還可以適當(dāng)?shù)目葱┫嚓P(guān)的課外書,開闊視野,這樣才會(huì)學(xué)好、運(yùn)用好計(jì)算機(jī)語言。就像前面說到的那些學(xué)生,開始他們總是滿足于教師教了他們多少;后來布置的練習(xí),如果是經(jīng)過教師分析后他們才做出來的,他們總是覺得沒有成就感。因?yàn)樘铠喪降慕虒W(xué),學(xué)生在學(xué)習(xí)中嘗試不到學(xué)習(xí)的成功與快樂,自然就學(xué)不好。為此,在講到具體程序設(shè)計(jì)后,每堂課上完后要布置兩三道課后習(xí)題沒有的題目,給學(xué)生多寫、多編、多讀、多看程序提供機(jī)會(huì)。

3.3 引導(dǎo)學(xué)生加強(qiáng)數(shù)學(xué)的學(xué)習(xí),努力拓寬數(shù)學(xué)知識(shí)面

當(dāng)然,如果要學(xué)得更深入一些,要求再高一些,扎實(shí)的數(shù)學(xué)基礎(chǔ)知識(shí)對(duì)于學(xué)習(xí)編程無疑是必要的。在后續(xù)的編程學(xué)習(xí)中,對(duì)算法等知識(shí)的理解與掌握要求有相當(dāng)?shù)臄?shù)學(xué)知識(shí)。因此,要求同學(xué)們要努力學(xué)好數(shù)學(xué)。比如在講二維數(shù)組的應(yīng)用時(shí),如果學(xué)生提前了解線性代數(shù)中行列式和矩陣的相關(guān)知識(shí),教學(xué)效果肯定顯著。

以上是長期擔(dān)任《C語言程序設(shè)計(jì)》課程教學(xué)的幾點(diǎn)體會(huì),從該課程的抽考和全國計(jì)算機(jī)等級(jí)考試《C語言程序設(shè)計(jì)》二級(jí)考試的情況來看,達(dá)到了預(yù)期的教學(xué)效果。

第5篇

【關(guān)鍵詞】 C語言程序設(shè)計(jì) 教學(xué)改革 實(shí)踐教學(xué)

一、引言

隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展和不斷普及,計(jì)算機(jī)已經(jīng)在人們的工作生活中得到了越來越廣泛的應(yīng)用,由此也促進(jìn)了高校計(jì)算機(jī)技術(shù)教育的不斷推進(jìn)。目前許多高校已經(jīng)將計(jì)算機(jī)語言課作為一門基礎(chǔ)必修課,主要目的是讓學(xué)生通過程序設(shè)計(jì)方法的學(xué)習(xí),了解計(jì)算機(jī)解決問題的過程和方法,訓(xùn)練邏輯思維能力,培養(yǎng)解決問題的能力。C語言程序設(shè)計(jì)以其豐富的數(shù)據(jù)類型、清晰的語言結(jié)構(gòu)、較強(qiáng)的邏輯性以及結(jié)構(gòu)化程序設(shè)計(jì)思想等優(yōu)點(diǎn),非常適合作為教學(xué)語言,因此許多高校將C語言程序設(shè)計(jì)作為公共基礎(chǔ)課。然而,由于C語言課程引入許多新概念和思想較為抽象和復(fù)雜,對(duì)于初學(xué)者來說仍具有一定的難度。針對(duì)這種情況,筆者總結(jié)了教學(xué)過程中出現(xiàn)的問題,提出改革方案,并取得了良好的效果。

二、存在的問題

作者通過多年從事C語言程序設(shè)計(jì)課程的教學(xué)工作,發(fā)現(xiàn)在教學(xué)中存在的一些問題,總結(jié)起來主要有以下幾點(diǎn):

(1)內(nèi)容繁雜,學(xué)習(xí)過程枯燥

在C語言程序設(shè)計(jì)課程中,開始的幾堂課主要是介紹數(shù)據(jù)類型、語法規(guī)則、基本函數(shù)等,內(nèi)容往往比較單調(diào)、枯燥、信息量較大,學(xué)生學(xué)習(xí)起來,覺得乏味,無聊,缺乏學(xué)習(xí)興趣和學(xué)習(xí)信心。

(2)理論與實(shí)踐教學(xué)環(huán)節(jié)脫節(jié)

目前,許多高校中C語言程序設(shè)計(jì)課程多以課堂理論講授為主,比較注重知識(shí)體系的完整,而忽略了學(xué)生編程能力以及創(chuàng)新能力等綜合素質(zhì)的培養(yǎng)。因此,理論與實(shí)踐并重,注重培養(yǎng)學(xué)生的邏輯思維能力以及解決問題的能力,培養(yǎng)學(xué)生的鉆研精神,是亟待解決的問題。

(3)學(xué)生難以建立抽象的邏輯思維能力。

利用計(jì)算機(jī)語言解決實(shí)際問題時(shí),既有抽象的數(shù)學(xué)思維,又與以前所建立的數(shù)學(xué)思維不同,對(duì)邏輯思維能力要求較高。學(xué)生常常感到課堂上聽懂了,可是自己編程解決問題時(shí),又覺得無從下手。因此,如何幫助學(xué)生建立計(jì)算機(jī)語言抽象思維方式是教好課程的關(guān)鍵所在。

(4)缺乏科學(xué)合理的考核方案

傳統(tǒng)考核往往采用期末一張?jiān)嚲矶ǔ煽兊目己四J剑狈?duì)學(xué)習(xí)過程中的監(jiān)督和監(jiān)管,部分學(xué)生為了得到高分,往往期末臨時(shí)抱佛腳的突擊復(fù)習(xí),只注重語法等細(xì)節(jié)知識(shí),不利于對(duì)學(xué)生解決實(shí)際問題能力的培養(yǎng)。

此外,由于學(xué)時(shí)有限以及機(jī)房硬件條件等因素的限制,也影響著C語言課程的實(shí)際教學(xué)效果。

三、教學(xué)改革措施

下面作者結(jié)合多年的計(jì)算機(jī)語言課程教學(xué)經(jīng)驗(yàn),針對(duì)C語言程序設(shè)計(jì)課程教學(xué)過程中常見的問題,提出了一些改革措施。

(1)課堂采用多種教學(xué)手段,充分調(diào)動(dòng)學(xué)生學(xué)習(xí)積極性

首先,對(duì)于C語言繁多的語法、語句等比較枯燥的理論知識(shí),教師要充分利用現(xiàn)代化多媒體教學(xué)設(shè)備,制作生動(dòng)的電子教案,并配以一定的實(shí)際生活中的實(shí)例,如水仙花數(shù)、猴子分桃等,可以進(jìn)行現(xiàn)場(chǎng)編程,使學(xué)生在解決實(shí)際問題的過程中,逐步掌握理論知識(shí)。對(duì)于一些有趣的實(shí)例,比如說漢諾塔等,可以制作多媒體課件,寓教于樂,增強(qiáng)課堂內(nèi)容趣味性,從而充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,以及培養(yǎng)學(xué)生的主動(dòng)學(xué)習(xí)能力與探索知識(shí)的能力。

(2)豐富多彩的授課方式,培養(yǎng)學(xué)生自主學(xué)習(xí)能力

根據(jù)不同課程內(nèi)容的特點(diǎn),教師選取合適的課堂組織方式。例如,教師可以采用問題討論教學(xué),由教師提出問題,讓學(xué)生分組相互討論,提出解決問題的方法,教師只提供必要的輔導(dǎo),從而培養(yǎng)學(xué)生主動(dòng)學(xué)習(xí)、探索并解決問題的能力以及創(chuàng)新能力。教師可以在授課過程中,引入項(xiàng)目驅(qū)動(dòng)式,先從一個(gè)最簡單的程序開始,隨著課程的不斷推進(jìn),不斷擴(kuò)充原有程序,教師要根據(jù)知識(shí)的層次關(guān)系提出更深層次的問題,引導(dǎo)學(xué)生思考。在項(xiàng)目驅(qū)動(dòng)教學(xué)法上,需要注意的是新知識(shí)點(diǎn)要在原有知識(shí)點(diǎn)之上的逐步導(dǎo)入,由淺到難地逐層推進(jìn),從而使學(xué)生更容易接受。教師還可以采用啟發(fā)式教學(xué),結(jié)合一些直觀形象,易于引起學(xué)生聯(lián)想的具體事例來激發(fā)學(xué)生的思維,使他們學(xué)會(huì)舉一反三和獨(dú)立思考,注重學(xué)生邏輯思維能力的培養(yǎng)。

(3)理論與實(shí)踐齊頭并進(jìn),培養(yǎng)學(xué)生實(shí)踐動(dòng)手能力

由于C語言程序設(shè)計(jì)是一門實(shí)踐性非常強(qiáng)的課程,要想學(xué)好C語言,就必須要多編程,多練習(xí),在不斷的編程練習(xí)過程中,掌握程序的設(shè)計(jì)思想,提高編程能力。我校十分重視實(shí)踐環(huán)境建設(shè),建有12個(gè)公共機(jī)房,并全部接入校園網(wǎng),供全校C語言公共課使用。我校C語言程序設(shè)計(jì)公共課全部在機(jī)房上課,學(xué)生一人一機(jī),機(jī)房配有投影儀,可供老師授課使用。優(yōu)越的教學(xué)條件和教學(xué)設(shè)施,為學(xué)生C語言課程的學(xué)習(xí)提供了硬件保證。要求授課教師要精心準(zhǔn)備上機(jī)的例題,并要求學(xué)生做好上機(jī)前得準(zhǔn)備工作。在課堂組織上,先要求學(xué)生認(rèn)真聽課,然后再布置習(xí)題,讓學(xué)生當(dāng)場(chǎng)編制、調(diào)試并運(yùn)行程序,盡量讓學(xué)生把當(dāng)堂課的授課內(nèi)容在課內(nèi)就完全掌握住,并能夠熟練運(yùn)用。對(duì)于學(xué)生編制的優(yōu)化性能較好的程序,教師要給予積極的鼓勵(lì)和表揚(yáng),使學(xué)生體驗(yàn)到成功的樂趣,從而增強(qiáng)學(xué)生的學(xué)習(xí)和探索問題的熱情。

(4)建立科學(xué)合理的考核方式,注重過程監(jiān)督和綜合素質(zhì)的培養(yǎng)

考試是教育評(píng)價(jià)的重要手段之一,傳統(tǒng)的考核方式大多以期末一張?jiān)嚲矶ǔ煽兊目己朔绞剑蛔⒅貙W(xué)習(xí)過程中知識(shí)的積累,不能全面反應(yīng)學(xué)生掌握知識(shí)的真實(shí)情況,并且不利于學(xué)生綜合能力和素質(zhì)的培養(yǎng)。因此,科學(xué)合理的考核方式對(duì)學(xué)好C語言也是重要環(huán)節(jié)之一。我校采用平時(shí)成績+期末考核的考核方式,平時(shí)成績主要由平時(shí)測(cè)驗(yàn)、平時(shí)作業(yè)、平時(shí)出勤等綜合給出。而期末考核由筆試考試+上機(jī)考核兩部分給出。筆試考核主要考察學(xué)生基礎(chǔ)知識(shí)和基本理論的掌握情況,而上機(jī)考試主要考核學(xué)生動(dòng)手能力和運(yùn)用知識(shí)的綜合能力。通過引入平時(shí)監(jiān)管,就要求學(xué)生認(rèn)真對(duì)待每一堂課,避免期末為了應(yīng)付考試而突擊復(fù)習(xí)的現(xiàn)象。通過引入上機(jī)考核,充分培養(yǎng)了學(xué)生的編程能力、解決實(shí)際問題的能力及創(chuàng)新能力。

四、結(jié)束語

我校通過對(duì)C語言程序設(shè)計(jì)公共基礎(chǔ)課程的教學(xué)改革,有效增強(qiáng)了學(xué)生的學(xué)習(xí)熱情,激發(fā)了學(xué)生自主學(xué)習(xí)的積極性,提高了學(xué)生編寫、調(diào)試程序的能力以及編程解決實(shí)際問題的能力,培養(yǎng)了學(xué)生邏輯思維能力與團(tuán)隊(duì)合作精神,教學(xué)效果得到顯著提高。

參考文獻(xiàn)

[1] 蔡曉麗.陳舜青.丁志云,計(jì)算機(jī)C語言實(shí)驗(yàn)教學(xué)改革探討[J].電腦知識(shí)與技術(shù),2010(5):4191-4192

[2] 周欣欣,程序設(shè)計(jì)類課程教學(xué)改革探索與實(shí)踐.科技信息[J],2012(2)

[3] 余冬梅,基于C語言的計(jì)算機(jī)語言類課程的教學(xué)方法研究與實(shí)踐.現(xiàn)代計(jì)算機(jī)[J]2020(8):67-69

第6篇

【關(guān)鍵詞】C語言;教學(xué)改革;教學(xué)效果

《C語言程序設(shè)計(jì)》是高校各專業(yè)本科教學(xué)中的一門重要技術(shù)基礎(chǔ)課,在各專業(yè)的本科教學(xué)計(jì)劃中占有重要地位和作用。本課程的教學(xué)宗旨是要努力把C語言從應(yīng)試課程轉(zhuǎn)變?yōu)橐环N實(shí)踐工具,主要目的不再局限于使學(xué)生單純地了解和掌握C語言的基本語法規(guī)范,而是要致力于培養(yǎng)學(xué)生運(yùn)用C語言解決實(shí)際問題的編程能力,以C語言為工具,介紹程序設(shè)計(jì)的基本思想和方法,培養(yǎng)學(xué)生無論以后在學(xué)習(xí)、工作中使用什么語言編程,都能靈活應(yīng)用這些思想和方法的能力。

1.改革的必要性

我國傳統(tǒng)的教學(xué)模式是完全遵循書本內(nèi)容和知識(shí)結(jié)構(gòu),通過“講授法”完成一系列的教學(xué)任務(wù),如教師向?qū)W生傳遞知識(shí)信息、控制學(xué)生掌握知識(shí)信息的過程等。“講授法”從本質(zhì)上而言是一種單向性的思想交流或信息傳輸方式,是以教師為中心、學(xué)生被動(dòng)接受知識(shí)的一種教學(xué)模式。在教學(xué)過程中,學(xué)生才是真正的主體。隨著應(yīng)用型人才培養(yǎng)改革的不斷深入,學(xué)生培養(yǎng)目標(biāo)和教育理念也不斷更新,傳統(tǒng)的教學(xué)方法無法滿足現(xiàn)代教學(xué)需求,從而提出教學(xué)內(nèi)容、教學(xué)方法和教學(xué)手段的改進(jìn),提高學(xué)生學(xué)習(xí)《C語言程序設(shè)計(jì)》課程效率和效果。

2.教學(xué)內(nèi)容的科學(xué)組織

教學(xué)內(nèi)容的科學(xué)組織是提高教學(xué)質(zhì)量的關(guān)鍵。眾多程序設(shè)計(jì)教材中存在的問題:①實(shí)例不實(shí),為解釋語法而設(shè)計(jì)。②語法堆砌,只見樹木不見森林。③忽視錯(cuò)誤程序的分析與講解。為解決以上問題,編寫了內(nèi)容緊密結(jié)合實(shí)踐,實(shí)例兼趣味性和實(shí)用性的教材。

在教學(xué)內(nèi)容中強(qiáng)調(diào)理論和實(shí)踐的結(jié)合,結(jié)合項(xiàng)目案例組織教學(xué)內(nèi)容。教師根據(jù)教學(xué)要求與目的,精心選擇有普遍性、代表性的案例,案例難易程度還要與學(xué)生的接受能力相適應(yīng),教師對(duì)相關(guān)資料進(jìn)行整理加工,去粗存精,使內(nèi)容適當(dāng)?shù)牡湫突员阌趯W(xué)生分析研究。課前將案例說明資料,以及與案例有關(guān)的背景知識(shí)、理論說明參考資料等交給學(xué)生預(yù)習(xí)。要求學(xué)生閱讀、理解、思考案例。要求學(xué)生分組在課堂上運(yùn)用原始資料,通過分析與討論,找出需要解決的問題并提出解決問題的方案。教師對(duì)學(xué)生提出的各種案例解決方案進(jìn)行評(píng)價(jià)并總結(jié)。通過項(xiàng)目案例可以幫助學(xué)生對(duì)理論知識(shí)的理解,可以培養(yǎng)學(xué)生分析問題和解決問題的能力,可以激發(fā)學(xué)生的學(xué)習(xí)興趣。

3.教學(xué)方法的靈活應(yīng)用

以應(yīng)用為背景,以程序設(shè)計(jì)方法為主線、以語法和結(jié)構(gòu)為核心,以培養(yǎng)能力和提高興趣為目標(biāo),重視方法、思想和能力的結(jié)合。提出多種實(shí)用新式的教學(xué)方法:案例—任務(wù)驅(qū)動(dòng)教學(xué)方法、設(shè)置錯(cuò)誤尋求正確答案教學(xué)方法。

1)案例—任務(wù)驅(qū)動(dòng)的教學(xué)方法

“程序設(shè)計(jì)語言”強(qiáng)調(diào)的是“設(shè)計(jì)”,應(yīng)當(dāng)從“設(shè)計(jì)”入手,以程序設(shè)計(jì)思想與方法為核心,注重程序的編寫過程,選擇一個(gè)恰當(dāng)?shù)陌咐浅V匾0咐倪x擇應(yīng)當(dāng)由淺入深,要做到精、準(zhǔn)、易。精就是突出重點(diǎn),目的明確;準(zhǔn)就是能夠反映欲教授內(nèi)容的本質(zhì);易是簡單易懂,不能把學(xué)生嚇著。

2)設(shè)置錯(cuò)誤尋求正確答案的教學(xué)方法

在課堂教學(xué)中,有意給出一些帶有算法錯(cuò)誤或語法錯(cuò)誤的程序段,使學(xué)生產(chǎn)生一些疑問,去思考,為什么這樣編程不對(duì)?為什么這樣的程序得不到正確的運(yùn)行結(jié)果?讓學(xué)生自己去尋找程序答案,修正這種程序中的語法錯(cuò)誤及算法錯(cuò)誤。

4.教學(xué)手段的改進(jìn)

采用“以多媒體教學(xué)為主、板書為輔、現(xiàn)場(chǎng)編程演示”的方式,多種教學(xué)手段相互補(bǔ)充,使課堂教學(xué)與實(shí)驗(yàn)教學(xué)相結(jié)合。

多媒體教學(xué)方式的特點(diǎn)是信息量大,圖文直觀,便于算法的動(dòng)態(tài)演示,同時(shí)借助于編譯系統(tǒng)進(jìn)行程序從編輯、編譯、鏈接、運(yùn)行到測(cè)試與調(diào)試的整個(gè)過程的演示,可增強(qiáng)學(xué)生對(duì)程序設(shè)計(jì)的感性認(rèn)識(shí),缺點(diǎn)是每頁的幻燈片內(nèi)容有限,不便于學(xué)生進(jìn)行前后內(nèi)容的對(duì)照,內(nèi)容更新速度過快,學(xué)生有時(shí)反應(yīng)不過來,跟不上教師的思路,而傳統(tǒng)的板書教學(xué)法恰好彌補(bǔ)了這一缺陷。因此,以多媒體教學(xué)為主、板書為輔,多種教學(xué)手段并用,可以實(shí)現(xiàn)傳統(tǒng)媒體與多媒體的優(yōu)勢(shì)互補(bǔ),最大限度發(fā)揮二者的應(yīng)用價(jià)值。教師課堂現(xiàn)場(chǎng)編程演示,目的是避免紙上談兵,達(dá)到“以學(xué)生為本、師生互動(dòng)”的目的,雖然加大了教師授課的隨機(jī)性和難度,但是卻可以充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性和主動(dòng)性,而且由教師一邊帶領(lǐng)學(xué)生找錯(cuò),一邊講解如何找錯(cuò)和如何改錯(cuò),給學(xué)生留下的印象更為深刻,也真正體現(xiàn)了“按照學(xué)生的學(xué)來設(shè)計(jì)和組織教師的教、啟發(fā)引導(dǎo)、精講多練、理論與實(shí)踐相結(jié)合”的教學(xué)宗旨。

5.總結(jié)

針對(duì)應(yīng)用型人才培養(yǎng)目標(biāo),本文對(duì)C語言程序設(shè)計(jì)課程教學(xué)的各方面提出了改革。經(jīng)過幾年的教學(xué)實(shí)踐表明,該教學(xué)模式有利于調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,使學(xué)生真正地認(rèn)識(shí)地到學(xué)有所需,學(xué)有所用,學(xué)有所為。培養(yǎng)了學(xué)生分析問題和解決問題的能力,提高了學(xué)生程序設(shè)計(jì)和程序調(diào)試的水平。

參考文獻(xiàn)

[1]翟秋菊.C語言程序設(shè)計(jì)教學(xué)改革初探[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2008,3.

[2]張索君.《C語言程序設(shè)計(jì)》教學(xué)改革初探[J].河南科學(xué)學(xué)院學(xué)報(bào),2010,2.

[3]翟文憲.案例教學(xué)初探[J].課程·教材·教法,1996,6.

第7篇

由于時(shí)間的關(guān)系,我們的這次實(shí)習(xí)課程老師并沒有給我們?cè)敿?xì)的介紹,只是給我們簡單的介紹了幾個(gè)比較重要的實(shí)際操作。包括了程序模塊處理.簡單界面程序.高級(jí)界面程序.程序的添加修改.用程序做一元線性回歸處理以及用c語言程序來畫粒度分布圖等這幾樣比較重要的時(shí)間操作。

上機(jī)實(shí)驗(yàn)是學(xué)習(xí)程序設(shè)計(jì)語言必不可少的實(shí)習(xí)環(huán)節(jié),特別是c語言靈活、簡潔,更需要通過編程的實(shí)習(xí)來真正掌握它。對(duì)于程序設(shè)計(jì)語言的學(xué)習(xí)目的,可以概括為學(xué)習(xí)語法規(guī)定、掌握程序設(shè)計(jì)方法、提高程序開發(fā)能力,這些都必須通過充分的實(shí)際上機(jī)操作才能完成。

學(xué)習(xí)c程序設(shè)計(jì)語言除了課堂講授以外,必須保證有不少于課堂講授學(xué)時(shí)的上機(jī)時(shí)間。因?yàn)閷W(xué)時(shí)所限,課程不能安排過多的統(tǒng)一上機(jī)實(shí)驗(yàn),所以希望學(xué)生有效地利用課程上機(jī)實(shí)驗(yàn)的機(jī)會(huì),盡快掌握用c語言開發(fā)程序的能力,為今后的繼續(xù)學(xué)習(xí)打下一個(gè)良好的基礎(chǔ)。為此,我們結(jié)合課堂講授的內(nèi)容和進(jìn)度,安排了12次上機(jī)實(shí)驗(yàn)。課程上機(jī)實(shí)驗(yàn)的目的,不僅僅是驗(yàn)證教材和講課的內(nèi)容、檢查自己所編的程序是否正確,課程安排的上機(jī)實(shí)驗(yàn)的目的可以概括為如下幾個(gè)方面:

1.熟悉程序開發(fā)環(huán)境、學(xué)習(xí)計(jì)算機(jī)系統(tǒng)的操作方法

一個(gè)c語言程序從編輯、編譯、連接到運(yùn)行,都要在一定的外部操作環(huán)境下才能進(jìn)行。所謂 環(huán)境 就是所用的計(jì)算機(jī)系統(tǒng)硬件、軟件條件,只有學(xué)會(huì)使用這些環(huán)境,才能進(jìn)行程序開發(fā)工作。通過上機(jī)實(shí)驗(yàn),熟練地掌握c語言開發(fā)環(huán)境,為以后真正編寫計(jì)算機(jī)程序解決實(shí)際問題打下基礎(chǔ)。同時(shí),在今后遇到其它開發(fā)環(huán)境時(shí)就會(huì)觸類旁通,很快掌握新系統(tǒng)的使用。

2.學(xué)習(xí)上機(jī)調(diào)試程序

完成程序的編寫,決不意味著萬事大吉。你認(rèn)為萬無一失的程序,實(shí)際上機(jī)運(yùn)行時(shí)可能不斷出現(xiàn)麻煩。如編譯程序檢測(cè)出一大堆錯(cuò)誤。有時(shí)程序本身不存在語法錯(cuò)誤,也能夠順利運(yùn)行,但是運(yùn)行結(jié)果顯然是錯(cuò)誤的。開發(fā)環(huán)境所提供的編譯系統(tǒng)無法發(fā)現(xiàn)這種程序邏輯錯(cuò)誤,只能靠自己的上機(jī)經(jīng)驗(yàn)分析判斷錯(cuò)誤所在。程序的調(diào)試是一個(gè)技巧性很強(qiáng)的工作,對(duì)于初學(xué)者來說,盡快掌握程序調(diào)試方法是非常重要的。有時(shí)候一個(gè)消耗你幾個(gè)小時(shí)時(shí)間的小小錯(cuò)誤,調(diào)試高手一眼就看出錯(cuò)誤所在。

通過這次為數(shù)不多的幾天計(jì)算機(jī)實(shí)習(xí)學(xué)習(xí),我們了解了一些關(guān)于c語言的知識(shí),理解鞏固了我們c語言的理論知識(shí),著對(duì)我們將來到社會(huì)工作將會(huì)有莫大的幫助。同時(shí)它讓我知道,只要你努力,任何東西都不會(huì)太難。

3.加深對(duì)課堂講授內(nèi)容的理解

課堂上要講授許多關(guān)于c語言的語法規(guī)則,聽起來十分枯燥無味,也不容易記住,死記硬背是不可取的。然而要使用c語言這個(gè)工具解決實(shí)際問題,又必須掌握它。通過多次上機(jī)練習(xí),對(duì)于語法知識(shí)有了感性的認(rèn)識(shí),加深對(duì)它的理解,在理解的基礎(chǔ)上就會(huì)自然而然地掌握c語言的語法規(guī)定。對(duì)于一些內(nèi)容自己認(rèn)為在課堂上聽懂了,但上機(jī)實(shí)習(xí)中會(huì)發(fā)現(xiàn)原來理解的偏差,這是由于大部分學(xué)生是初次接觸程序設(shè)計(jì),缺乏程序設(shè)計(jì)的實(shí)習(xí)所致。C語言程序設(shè)計(jì)實(shí)習(xí)心得體會(huì)(3篇)C語言程序設(shè)計(jì)實(shí)習(xí)心得體會(huì)(3篇)。

第8篇

關(guān)鍵詞: 中職計(jì)算機(jī)專業(yè) 《C語言程序設(shè)計(jì)》 教學(xué)方法

《C語言程序設(shè)計(jì)》在中職計(jì)算機(jī)專業(yè)專業(yè)課程中起著舉足輕重的作用,也是對(duì)口高考技能考核和理論考試的必考科目。學(xué)生素質(zhì)偏差是中職學(xué)校普遍存在的共性,由于學(xué)生素質(zhì)一般不高,學(xué)習(xí)興趣不濃,學(xué)習(xí)態(tài)度不端正,學(xué)習(xí)目的不明確,再加上學(xué)生剛剛接觸計(jì)算機(jī)語言類的專業(yè)課,該課程本身難度較大,枯燥無味,又存在傳統(tǒng)教學(xué)的弊端,教學(xué)設(shè)施設(shè)備落后,這些因素造成學(xué)生學(xué)習(xí)困難,沒有興趣去學(xué),甚至有些學(xué)生望而生怯,不愿意去學(xué);教師上課也無精打采,照本宣課,課堂氛圍死氣沉沉,教學(xué)效率不高,教學(xué)質(zhì)量上不去,使教學(xué)陷入困境。如何使教師的教與學(xué)生的學(xué)走出誤區(qū),已成為當(dāng)務(wù)之急。

一、培養(yǎng)學(xué)習(xí)興趣,提高學(xué)生的學(xué)習(xí)積極性

愛因斯坦曾經(jīng)說過:“興趣是最好的老師。”一些老師往往不注重學(xué)生興趣的培養(yǎng),在第一課簡單介紹完自己后就步入正題,開始按部就班地教學(xué)了,認(rèn)為早點(diǎn)讓學(xué)生接觸本課程的相關(guān)基礎(chǔ)知識(shí),可為后面緊張的學(xué)習(xí)爭取時(shí)間。其實(shí)不然,中職學(xué)生素質(zhì)不高,學(xué)習(xí)興趣不濃,甚至有厭學(xué)情緒,如果一開始就講授課本知識(shí),容易使本就厭倦學(xué)習(xí)的學(xué)生產(chǎn)生抵觸情緒,從而為后面的教學(xué)帶來諸多不利因素。

教師首先應(yīng)想方設(shè)法調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,不要急著去講解書本知識(shí),把學(xué)生學(xué)習(xí)積極性調(diào)動(dòng)起來,讓學(xué)生感覺學(xué)習(xí)C語言程序好玩,把C語言的研發(fā)當(dāng)成一種游戲,產(chǎn)生強(qiáng)烈的求知欲望,進(jìn)而挖掘出巨大的學(xué)習(xí)潛能。

其次在C語言教學(xué)中應(yīng)多采用通俗易懂的例子,避免抽象問題挫傷學(xué)生學(xué)習(xí)積極性。比如在講解兩個(gè)變量值互換時(shí),很多學(xué)生采用數(shù)學(xué)中的解法:A=B,B=A,不理解為什么要引入中間變量C,使用C=A;A=B;B=C語句。[1]此時(shí)教師如果用生活中看得見摸得著的實(shí)物來比喻,學(xué)生就很容易理解了。假設(shè)A和B兩個(gè)盒子里分別放滿白色粉筆和彩色粉筆,現(xiàn)要求在不借助第三方載體的情況下將兩盒粉筆交換,請(qǐng)同學(xué)演示,能否成功?如果再拿一個(gè)空盒子來并允許使用第三個(gè)空盒,能否成功?由此得出必須借助第三個(gè)盒子,才能交換成功。這樣學(xué)生理解起來就容易多了。

二、重新整合教學(xué)內(nèi)容,分類匯總

教材一般先介紹數(shù)據(jù)類型、表達(dá)式、算法、函數(shù)等抽象難懂的C語言基本概念,然后才介紹程序的編輯和運(yùn)行。如何利用現(xiàn)有資源重新整合教學(xué)內(nèi)容打破教材原有的順序章節(jié),將各知識(shí)點(diǎn)按先分類后匯總的原則重新組織?這就要求教師對(duì)整本教材的內(nèi)容非常熟悉,能前后照應(yīng)、融會(huì)貫通,而不是為了上課而上課,照本宣課,不能盡信書,也不能無書,這樣會(huì)取得更好的教學(xué)效果。例如在講解命名規(guī)則時(shí),老師可以把變量和數(shù)組放在一起,使學(xué)生感覺到知識(shí)間的關(guān)聯(lián),記住了一個(gè),另一個(gè)也記住了,提高學(xué)習(xí)效益。再如利用C語言把一系列雜亂無章的數(shù)據(jù)按照一定順序排列,此時(shí)我們可以把順序法、選擇法、冒泡法放在一起,讓學(xué)生能直觀地看出各種方法的區(qū)別,舉一反三,有利于加深對(duì)知識(shí)的理解。

如學(xué)習(xí)循環(huán)結(jié)構(gòu)時(shí),舉例:sum=1+2+3+4+5+…+n;讓學(xué)生建立兩個(gè)概念:裝和的變量sum(初值為0),表達(dá)式:sum=sum+n;例題變化:p=1*2*3*4*5*…*n;裝乘積的變量p(初值為1),表達(dá)式:p=p*n;深化例題:s=1!+2!+3!+4!+5!+…+n!;引導(dǎo)學(xué)生分析并發(fā)現(xiàn)這是前兩個(gè)循環(huán)的合并,得出循環(huán)體語句:p=p*n,s=s+p,[2][3]使學(xué)生掌握一題多變的思維模式,舉一反三、觸類旁通。

三、改變傳統(tǒng)單一的教學(xué)方法

C語言和其他計(jì)算機(jī)專業(yè)課不同,它要求初學(xué)者要具備較好的數(shù)學(xué)和英語基本功,而數(shù)學(xué)和英語是職業(yè)中學(xué)學(xué)生普遍感到頭疼的“老大難”課程。針對(duì)這種現(xiàn)狀,我們要根據(jù)學(xué)科間的聯(lián)系,以及學(xué)生的個(gè)性差異因材施教,要改變過去單一、乏味的以教師講為主的傳統(tǒng)教學(xué)方法,采用適應(yīng)時(shí)代需求的符合學(xué)生客觀規(guī)律的“項(xiàng)目教學(xué)”、“自主學(xué)習(xí)”、“任務(wù)驅(qū)動(dòng)”、“案例學(xué)習(xí)”、“合作學(xué)習(xí)”[4]等多種方法。

例如:輸入5個(gè)學(xué)生的3門課程成績,求每個(gè)學(xué)生的平均成績和每門課程的平均成績。學(xué)生拿到題目感覺無從下手,我把題目拆分成兩個(gè)任務(wù):1.求每個(gè)學(xué)生的平均成績;2.求每門課程的平均成績。再將學(xué)生分成A、B兩組,分別將任務(wù)1交給A組學(xué)生完成,將任務(wù)2交給B組學(xué)生完成。這樣學(xué)生感覺輕松多了,輕而易舉地完成了各自的任務(wù)。最后我把兩個(gè)任務(wù)再組合在一起,此題就迎刃而解了。在教學(xué)過程中我改變了過去一個(gè)人講的傳統(tǒng)教學(xué)方式,采用項(xiàng)目教學(xué)和合作學(xué)習(xí)相結(jié)合的復(fù)合法使問題得以解決,學(xué)生對(duì)二維數(shù)組有了進(jìn)一步的認(rèn)識(shí),加深了理解。

求學(xué)生平均成績程序段如下:

For(i=0;i

Aves[i]=0

For(j=0;j

Aves[i]+=scor[i][j];

Aves[i]/=3;

求課程平均成績程序段如下:

For(i=0;i

Aves[i]=0

For(j=0;j

Aves[i]+=scor[i][j];

Aves[i]/=5;

C語言程序設(shè)計(jì)課程本身要求培養(yǎng)學(xué)生的動(dòng)手能力和綜合運(yùn)用知識(shí)解決實(shí)際問題的能力,這就要求學(xué)生要多動(dòng)手上機(jī)練習(xí)。教師要采用多媒體技術(shù),多形式地運(yùn)用教學(xué)方法激發(fā)學(xué)生的學(xué)習(xí)興趣,引導(dǎo)學(xué)生的發(fā)散性思維的形成。例如:打印楊輝三角形,由于學(xué)生對(duì)楊輝三角形不了解,教師可以借用Flas形象地打印出楊輝三角形,幫助學(xué)生找出其中的規(guī)律:第一列的數(shù)都是1,各行最后一個(gè)數(shù)也是1,從第3行第2個(gè)數(shù)起,為上行同列數(shù)與前一列數(shù)之和,例:a[i][j]=a[i-1][j-1]+a[i-1][j];(i>=3,j>=2)。教師借助動(dòng)畫,可使得原本抽象難懂的概念變成形象直觀的動(dòng)態(tài)模型,為學(xué)生在練習(xí)的過程中發(fā)現(xiàn)問題、探討問題、解決問題,積累豐富的經(jīng)驗(yàn),使學(xué)生體會(huì)到成功的喜悅。

只要我們能從學(xué)生的實(shí)際出發(fā),充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,運(yùn)用科學(xué)有效的適應(yīng)時(shí)代要求的教學(xué)方法,就一定能使學(xué)生學(xué)好這門課程。

參考文獻(xiàn):

[1]林東,陳琳.編程語言基礎(chǔ)――C語言.高等教育出版社,2006.6,(2).

[2]黃煜編.程序設(shè)計(jì)語言課程教學(xué)方法探討.山西農(nóng)業(yè)大學(xué)學(xué)報(bào),2006,(1).

第9篇

一、C語言程序設(shè)計(jì)課程教學(xué)現(xiàn)狀

C語言程序設(shè)計(jì)課程在本校已開設(shè)多年,經(jīng)過多年的教學(xué)改革和實(shí)踐,取得了較好的教學(xué)效果,但在本課程的實(shí)際教學(xué)中,依然存在如下幾方面的問題:(1)學(xué)生對(duì)該課程的學(xué)習(xí)目的和意義不甚了解。在實(shí)際教學(xué)工作中筆者等人發(fā)現(xiàn),由于公共課課時(shí)一再壓縮,教師在授課時(shí)急于追趕進(jìn)度,按照教材的章節(jié)順序?qū)⒏鱾€(gè)知識(shí)點(diǎn)逐一教授給學(xué)生。學(xué)生對(duì)于一些知識(shí)點(diǎn)似懂非懂,一知半解,許多學(xué)生并不明白其學(xué)習(xí)的目的和意義。學(xué)生只是機(jī)械地學(xué)習(xí),而不是自主、有目的地學(xué)習(xí),因而難以將整個(gè)知識(shí)體系融會(huì)貫通,導(dǎo)致應(yīng)用計(jì)算機(jī)解決專業(yè)問題的能力較弱。(2)課程理論與實(shí)踐脫節(jié)。傳統(tǒng)的教學(xué)模式是先進(jìn)行理論教學(xué),后進(jìn)行實(shí)踐操作,讓學(xué)生按照實(shí)驗(yàn)教材進(jìn)行實(shí)踐操作,二者不能互相融為一體。此外,學(xué)生的層次不一,對(duì)于理論知識(shí)難以內(nèi)化,這必然使學(xué)生在理論課中感到語法句法的枯燥乏味,同時(shí)感覺算法的內(nèi)容難度過大,難以對(duì)這門課程的學(xué)習(xí)產(chǎn)生興趣。(3)教學(xué)方法單一。大部分教師在講授C語言時(shí),往往把C語法規(guī)則等相關(guān)理論知識(shí)的講解作為教學(xué)重點(diǎn),不太注重算法的分析和設(shè)計(jì)。在講解例題時(shí)多關(guān)注語言的語法解析,和實(shí)際生活偏離太遠(yuǎn),課程與學(xué)生專業(yè)背景結(jié)合不緊密,學(xué)生學(xué)習(xí)興趣不高,學(xué)習(xí)積極性差。針對(duì)以上問題我們?cè)噲D從增加輔導(dǎo)課時(shí)、舉辦競(jìng)賽等途徑進(jìn)行改善,但收效不明顯。而計(jì)算思維的培養(yǎng)恰恰是解決這一問題的有效途徑。

二、基于計(jì)算思維能力與信息應(yīng)用能力培養(yǎng)的教學(xué)改革實(shí)踐

計(jì)算思維能力培養(yǎng)的教學(xué)方法大體有問題啟發(fā)式教學(xué)法、案例教學(xué)法和項(xiàng)目教學(xué)法。對(duì)于學(xué)生解決問題的能力和科學(xué)行動(dòng)能力的培養(yǎng),也常以案例教學(xué)法和項(xiàng)目教學(xué)法作為其教學(xué)方法。因此教師必須要認(rèn)真研究和思考如何在教學(xué)中開展案例教學(xué)和項(xiàng)目教學(xué)。C語言程序設(shè)計(jì)課程中的許多知識(shí)點(diǎn)都適合培養(yǎng)學(xué)生的計(jì)算思維能力,特別是分析設(shè)計(jì)程序時(shí)如何科學(xué)分析問題并進(jìn)行數(shù)學(xué)抽象,如何對(duì)問題進(jìn)行符合邏輯的算法設(shè)計(jì)、編程與調(diào)試以及生成可執(zhí)行的程序,都是對(duì)計(jì)算思維的很好的詮釋。因此,在培養(yǎng)學(xué)生計(jì)算思維能力方面最理想的課程之一就是C語言程序設(shè)計(jì)。

(一)理論教學(xué)

(1)以案例為線索重新安排教學(xué)內(nèi)容。認(rèn)真分析學(xué)生的認(rèn)知規(guī)律和專業(yè)背景,遵循“理論為輔,實(shí)踐為主”的教學(xué)原則,通過教學(xué)案例重新設(shè)計(jì)教學(xué)內(nèi)容和章節(jié)順序。在課堂教學(xué)中應(yīng)盡量淡化語法規(guī)則,通過實(shí)例應(yīng)用一些實(shí)用的語法,讓學(xué)生從實(shí)用的角度出發(fā)有選擇性地學(xué)習(xí)語法規(guī)則,而不是死記硬背。通過案例盡早引入函數(shù)和指針等概念分散教學(xué)難點(diǎn),符合學(xué)生的認(rèn)知規(guī)律。在講解具體程序時(shí)多采用單步調(diào)試執(zhí)行程序的方式,讓學(xué)生能清晰地體會(huì)程序的執(zhí)行過程,為后續(xù)復(fù)雜程序的學(xué)習(xí)奠定良好的基礎(chǔ)。(2)通過案例教學(xué)法培養(yǎng)學(xué)生解決問題的能力。在講解案例時(shí)從計(jì)算思維的角度出發(fā),引導(dǎo)學(xué)生體會(huì)分析、解決問題的基本思路,求解問題的已知信息、中間結(jié)果和最終結(jié)果,學(xué)會(huì)抽象化地描述問題,然后逐步明晰解決問題的方法和步驟,即算法的設(shè)計(jì),最后利用C語言完成代碼的編寫、調(diào)試和執(zhí)行,最終實(shí)現(xiàn)該算法,達(dá)到解決問題的目的。在這個(gè)問題的求解過程中,將解決問題的過程提升到培養(yǎng)計(jì)算思維的高度,讓學(xué)生更深刻地理解計(jì)算思維的本質(zhì)。(3)設(shè)計(jì)使用多種方式將程序與學(xué)生的專業(yè)領(lǐng)域內(nèi)容相融合。比如以與專業(yè)相關(guān)的項(xiàng)目為出發(fā)點(diǎn)進(jìn)行基礎(chǔ)內(nèi)容的介紹等。在具體的教學(xué)過程中只要求學(xué)生具備基本的編程素養(yǎng)和解決本專業(yè)應(yīng)用問題的能力,不同專業(yè)的項(xiàng)目要以相關(guān)專業(yè)領(lǐng)域的應(yīng)用為基礎(chǔ)、以程序設(shè)計(jì)方法為主線,目的是培養(yǎng)學(xué)生的應(yīng)用能力和提高學(xué)生的學(xué)習(xí)興趣,讓學(xué)生多從各種角度去了解和掌握C語言以及程序設(shè)計(jì)的精髓。例如,數(shù)學(xué)類、管理類專業(yè)的學(xué)生可以重點(diǎn)學(xué)習(xí)與數(shù)據(jù)庫交互處理的技術(shù)。

(二)實(shí)踐教學(xué)

實(shí)踐教學(xué)是鞏固理論知識(shí)、積累實(shí)踐操作經(jīng)驗(yàn)的重要環(huán)節(jié)。在此環(huán)節(jié)的教學(xué)中應(yīng)重點(diǎn)訓(xùn)練學(xué)生運(yùn)用計(jì)算思維方法去解決實(shí)際問題。在教學(xué)內(nèi)容設(shè)計(jì)方面應(yīng)注意由淺入深、循序漸進(jìn),因此筆者分別設(shè)置初級(jí)、中級(jí)和高級(jí)3種類型的實(shí)驗(yàn)項(xiàng)目。在初級(jí)和高級(jí)實(shí)驗(yàn)教學(xué)環(huán)節(jié),我們著力做好以下幾個(gè)方面的工作:(1)按步驟上機(jī)實(shí)踐。教師在每次上機(jī)實(shí)踐課前,給學(xué)生布置實(shí)驗(yàn)課的中級(jí)項(xiàng)目內(nèi)容,要求學(xué)生利用課余時(shí)間分析問題并設(shè)計(jì)擬定好算法,畫出流程圖,寫出代碼。上課時(shí)教師適時(shí)抽查學(xué)生完成這部分工作的情況。上機(jī)課第一項(xiàng)工作是要求學(xué)生完成初級(jí)項(xiàng)目的測(cè)試,測(cè)試由無紙化考試系統(tǒng)支持,測(cè)試通過后,剩余時(shí)間讓學(xué)生完成中級(jí)項(xiàng)目的程序調(diào)試工作,在調(diào)試過程中,教師及時(shí)對(duì)學(xué)生存在的疑問進(jìn)行解答。規(guī)范化的上機(jī)實(shí)踐工作讓學(xué)生養(yǎng)成一個(gè)良好的學(xué)習(xí)和訓(xùn)練習(xí)慣,全面提高學(xué)生在遇到問題時(shí)獨(dú)立分析問題和解決問題的能力。(2)教師上機(jī)指導(dǎo)。上機(jī)實(shí)踐中程序的調(diào)試主要是排除代碼的語法和邏輯錯(cuò)誤。因此在每次上機(jī)過程中,對(duì)于程序編譯鏈接時(shí)出現(xiàn)的錯(cuò)誤,要求學(xué)生記錄錯(cuò)誤信息并分析原因,避免再犯同樣的錯(cuò)誤。教師對(duì)常見的錯(cuò)誤集中進(jìn)行講解,教給學(xué)生規(guī)避錯(cuò)誤的基本方法,逐步培養(yǎng)學(xué)生獨(dú)立調(diào)試程序的能力。對(duì)學(xué)生算法方面的疑問,不直接為學(xué)生指出代碼中的問題,而是逐步引導(dǎo)學(xué)生自己找出問題。這樣有利于培養(yǎng)學(xué)生獨(dú)立發(fā)現(xiàn)問題、分析問題的能力。(3)總結(jié)上機(jī)實(shí)踐。每次上機(jī)實(shí)踐課結(jié)束后,要求學(xué)生在課后對(duì)本次上機(jī)實(shí)踐的工作進(jìn)行及時(shí)歸納和總結(jié),對(duì)各個(gè)環(huán)節(jié)出現(xiàn)的問題進(jìn)行總結(jié)和反思。對(duì)于普遍存在的問題,教師集中講解答疑。及時(shí)、有效的總結(jié)和反思可以有效地提升學(xué)生的計(jì)算思維能力。(4)高級(jí)實(shí)驗(yàn)項(xiàng)目驅(qū)動(dòng)。通過高級(jí)項(xiàng)目的實(shí)際開發(fā)過程,引導(dǎo)學(xué)生創(chuàng)造性地運(yùn)用知識(shí)發(fā)現(xiàn)問題、研究問題和解決問題,促使學(xué)生在這個(gè)過程中積累知識(shí)、培養(yǎng)和鍛煉思維能力。建立學(xué)生學(xué)習(xí)互助小組,培養(yǎng)學(xué)生協(xié)作學(xué)習(xí)的能力。教師也可以在項(xiàng)目實(shí)踐中真正了解教與學(xué)的缺陷,推進(jìn)教學(xué)模式轉(zhuǎn)變。[3](5)結(jié)合學(xué)生專業(yè)背景,維持學(xué)習(xí)積極性。將C語言融入專業(yè)應(yīng)用中,可以有效地提升學(xué)生的學(xué)習(xí)積極性。教師在授課中應(yīng)結(jié)合學(xué)生的專業(yè)應(yīng)用方向,精心選擇、準(zhǔn)備與學(xué)生專業(yè)相關(guān)的項(xiàng)目案例進(jìn)行教學(xué)設(shè)計(jì)。選擇的項(xiàng)目要具備針對(duì)性、典型性和實(shí)踐性的特點(diǎn)。[4]例如,對(duì)于信息類專業(yè),可以選用各種信息系統(tǒng)的項(xiàng)目引導(dǎo)課程的教學(xué)。

(三)課程考核

本課程結(jié)合實(shí)際應(yīng)用,引入企業(yè)項(xiàng)目化考核方式,更加注重對(duì)學(xué)習(xí)過程的考核。建立以自動(dòng)評(píng)測(cè)系統(tǒng)和實(shí)踐能力考核為主的多元化考核體系。期末總成績由期末機(jī)試成績(40%)、實(shí)驗(yàn)項(xiàng)目考核成績(40%)和平時(shí)成績(20%)組成。實(shí)驗(yàn)項(xiàng)目成績由中級(jí)項(xiàng)目和高級(jí)項(xiàng)目兩項(xiàng)實(shí)驗(yàn)成績組成。即從項(xiàng)目的實(shí)施情況記錄、小組項(xiàng)目的成果展示、實(shí)驗(yàn)報(bào)告的總結(jié)以及小組成員的合作態(tài)度等各個(gè)方面評(píng)定學(xué)生成績。平時(shí)成績依據(jù)課堂表現(xiàn)、考勤情況和小組協(xié)作三方面組成。這樣做的目的是讓學(xué)生的最終成績能更客觀地反映學(xué)生的學(xué)習(xí)過程和學(xué)習(xí)效果,突出能力培養(yǎng)目標(biāo),減輕學(xué)生的考試壓力。四、結(jié)語培養(yǎng)科學(xué)行動(dòng)能力,提升計(jì)算思維能力是應(yīng)用型本科院校非計(jì)算機(jī)專業(yè)的計(jì)算機(jī)課程的教學(xué)目標(biāo)。實(shí)踐證明,在教學(xué)中應(yīng)該有意識(shí)地在理論教學(xué)和實(shí)踐教學(xué)的各個(gè)環(huán)節(jié)中融入計(jì)算思維的培養(yǎng)。在實(shí)踐課的教學(xué)環(huán)節(jié),通過分級(jí)項(xiàng)目的形式由易到難地把學(xué)生融入項(xiàng)目達(dá)標(biāo)與設(shè)計(jì)實(shí)現(xiàn)的過程中,不僅僅有助于學(xué)生理解計(jì)算機(jī)分析解決實(shí)際問題的思想,更有助于提高學(xué)生利用計(jì)算思維方式來解決實(shí)際問題的能力與團(tuán)隊(duì)協(xié)作能力。

作者:劉紅霞 單位:榆林學(xué)院

第10篇

關(guān)鍵詞:C語言;指針;指針變量;地址

中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)02-0389-03

Discuss Application Of The Pointer in C Language Program

HU Xiao-yan,PANG Run-fang

(Engineering & Training Center Inner Mongolia University of Seicence and Technology, Baotou 014010, China)

Abstract: In this paper,the concept of pointer,pointer arithmetic,pointer of use, flexible application should pay attention to in terms of C language pointer analysis and discussion. Guide the students how to use the pointer.

Key words: C Langwage; Pointer; Pointer Variables; Address

《C語言程序設(shè)計(jì)》課程是我校理工科非計(jì)算機(jī)專業(yè)學(xué)生進(jìn)入大學(xué)所接觸的第一門計(jì)算機(jī)語言課程。實(shí)踐證明,該門課程對(duì)于初學(xué)者來說難度比較大,這也是由于C語言的特點(diǎn)決定的。因?yàn)镃語言功能強(qiáng)大,它既有高級(jí)語言的特點(diǎn),也有低級(jí)語言的特點(diǎn)。而在這門課程中指針又是C語言的精華,因此靈活地應(yīng)用指針,可有效地表示復(fù)雜的數(shù)據(jù)結(jié)構(gòu)、動(dòng)態(tài)分配內(nèi)存、方便地引用字符串和數(shù)組;在進(jìn)行函數(shù)調(diào)用時(shí)還可獲得多個(gè)返回值,并可直接處理內(nèi)存地址,實(shí)現(xiàn)其它高級(jí)語言難以實(shí)現(xiàn)的功能;運(yùn)用指針編程是C語言最重要的風(fēng)格之一。但指針比較難以掌握,使用時(shí)常犯一些錯(cuò)誤,即使是熟練的程序員也很難發(fā)現(xiàn)和排除這些錯(cuò)誤。為了設(shè)計(jì)出高效、簡潔、緊湊的用戶程序,正確理解和使用指針非常重要。因此如何引導(dǎo)學(xué)生學(xué)會(huì)C語言的指針在編程中應(yīng)用是很重要的事情。

1指針的概念

計(jì)算機(jī)對(duì)信息的處理都由操作系統(tǒng)調(diào)入存儲(chǔ)器存放并執(zhí)行,存儲(chǔ)器中有眾多的存儲(chǔ)單元,存儲(chǔ)單元是用來存放數(shù)據(jù)的。存放在存儲(chǔ)單元中的數(shù)據(jù)稱為存儲(chǔ)單元的內(nèi)容(或值)。計(jì)算機(jī)為了對(duì)存儲(chǔ)單元進(jìn)行有效的管理,便為存儲(chǔ)單元進(jìn)行編號(hào)(以字節(jié)為單位),這個(gè)編號(hào)就是“地址”,這個(gè)“地址”又稱為指針[1]。每個(gè)變量都有一個(gè)地址。不同數(shù)據(jù)類型的變量,占用的字節(jié)數(shù)不同,系統(tǒng)把變量占據(jù)存儲(chǔ)單元的第一個(gè)字節(jié)的地址作為該變量的地址。有了地址我們就可以引入指針變量。指針變量是一種特殊的變量,變量中存放的不是某種數(shù)據(jù)類型的數(shù)據(jù),而是存放另一個(gè)變量的地址。如果一個(gè)指針變量存放了另一個(gè)變量的地址,則形象地稱指針變量指向那個(gè)變量。下面提供一個(gè)指針的例題,通過分析例題來理解指針的概念。

例:利用指針,求兩個(gè)整數(shù)的和。main()

{ int i,j,sum;

int *p,*q;/*定義指針變量*/

p=&i;q=&j;/*建立關(guān)聯(lián)*/

scanf(“%d,%d”,p,q);

sum=*p+*q;/*使用指針變量*/

printf (“%d,%d\n”,*p,*q);

printf(“和= %d\n”,sum);

}

在程序當(dāng)中,首先定義兩個(gè)普通變量i,j,再定義兩個(gè)指針變量p,q,為了進(jìn)行區(qū)分普通變量和指針變量,所以在指針變量名前加’*’號(hào)。不能引用沒有賦值的指針變量,否則可能會(huì)造成系統(tǒng)癱瘓,所以將&i賦值給p,&j賦值給q,說明指針變量指向了普通變量。如圖所示:

有了指向關(guān)系,在輸出語句中就可以利用指針來訪問普通變量i,j。

2指針的運(yùn)算

指針變量和其他變量一樣,也可以進(jìn)行運(yùn)算,由于指針的運(yùn)算實(shí)際上是地址的運(yùn)算,所以和其它變量的運(yùn)算又有區(qū)別[1]。

1)間接訪問運(yùn)算

用變量名對(duì)其所對(duì)應(yīng)的存儲(chǔ)單元的內(nèi)容進(jìn)行讀寫稱為直接訪問,而通過存儲(chǔ)單元的地址對(duì)其內(nèi)容進(jìn)行讀寫的則稱為間接訪問。盡管指針變量中保存的是存儲(chǔ)單元的地址,而引入指針的目的主要是為了更方便快捷地訪問存儲(chǔ)單元的內(nèi)容。

間接訪問是在引用的指針變量前面加一個(gè)“*”號(hào),用來表示指針?biāo)赶虻拇鎯?chǔ)單元的值或內(nèi)容。例如:

int a=5, *p;

p=&a;

printf("%d",*p);

當(dāng)指針p指向a后,若用指針p訪問所指存儲(chǔ)單元的內(nèi)容時(shí),可以寫成*p,也就是說在這里*p與a是等價(jià)的。由于“&”與“*”兩個(gè)運(yùn)算符優(yōu)先級(jí)別相同,且結(jié)合方向均為自右至左,又是一對(duì)互逆運(yùn)算,所以有*&a=*p,&*p=&a。

2)指針變量加或減一個(gè)整型量,從而得到另一個(gè)地址,當(dāng)然自增自減運(yùn)算也是合法的。如先使p指向數(shù)組a的首地址(即p=a),則p+n表示的是下標(biāo)為n的元素地址。p++表示:使p指向下一個(gè)元素a[1]。如果接著執(zhí)行*p,則取出a[1]的值。*p++等價(jià)于*(p++)作用是:先得到p指向的變量的值(即*p),然后再將p+1=>p;*(p++)與*(++p)的作用不同,前者是先取*p的值,然后使p加1,而后者是先使p加1,再取*p;++ (*p)表示p所指向的元素的值加1。指針變量乘除一個(gè)整型量無意義,C語言也不允許此類語句出現(xiàn)。

3)由于指針變量中的地址也是一數(shù)值,所以指針變量間也可以進(jìn)行關(guān)系運(yùn)算。

4)兩個(gè)類型相同的指針變量可以相減,例如指向同一數(shù)組的指針變量相減可以得到兩個(gè)指針間元素的個(gè)數(shù)。相加或相乘則無意義[1]。

3指針的使用[3]

鏈表是數(shù)據(jù)結(jié)構(gòu)的一種存儲(chǔ)形式,能夠?qū)崿F(xiàn)動(dòng)態(tài)分配存儲(chǔ)空間。我們知道,用數(shù)組存放數(shù)據(jù)時(shí),必須事先對(duì)數(shù)組定義固定的長度(即元素的個(gè)數(shù))。例如,有的班級(jí)有100人,而有的班級(jí)有50人,如果要用同一數(shù)組先后存放不同班級(jí)的學(xué)生數(shù)據(jù),則必須定義長度為100的數(shù)組。如果事先難以確定元素的個(gè)數(shù),則必須把數(shù)組定義得足夠大,以便夠用;但實(shí)際若使用得很少,那樣就造成了內(nèi)存空間的浪費(fèi)。定義小了又滿足不了需求,為了解決這一矛盾,C語言提供了“需之則有,不需則無”的動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu)--鏈表,它根據(jù)需要開辟存儲(chǔ)單元。

指針和結(jié)構(gòu)體配合可以實(shí)現(xiàn)動(dòng)態(tài)存儲(chǔ)分配,用來實(shí)現(xiàn)對(duì)鏈表的建立、插入和刪除等操作。

建立一個(gè)簡單鏈表,結(jié)點(diǎn)類型定義的一般形式:

struct類型名

{數(shù)據(jù)域定義;

struct類型名*指針域名}

其中,數(shù)據(jù)域和指針域都可以不止一個(gè),當(dāng)指針域不止一個(gè)時(shí),將構(gòu)成比較復(fù)雜的鏈表。以4個(gè)結(jié)構(gòu)體變量為結(jié)點(diǎn)建立一個(gè)簡單鏈表并且輸出。

#include

struct node

{int data;

struct node *next; };

main()

{struct node a,b,c,d,*head,*p;

head=&a;/*頭指針指向a結(jié)點(diǎn)*/

a.data=10;a.next=&b;/*a結(jié)點(diǎn)指向b結(jié)點(diǎn)*/

b.data=20;b.next=&c;/*b結(jié)點(diǎn)指向c結(jié)點(diǎn)*/

c.data=30;c.next=&d;/*c結(jié)點(diǎn)指向d結(jié)點(diǎn)*/

d.data=40;d.next=NULL;/*d結(jié)點(diǎn)是尾結(jié)點(diǎn)*/

p=head;

while(p!=NULL)/*輸出鏈表,p作為工作指針*/

{printf(“%d-->”,p-->data);

p=p-->next;/*工作指針后移*/}

printf(“NULL\n”);}

運(yùn)行結(jié)果為:

10-->20-->30-->40-->NULL

建立一個(gè)簡單鏈表很容易,只需將引用自身的結(jié)構(gòu)體變量的地址賦給前驅(qū)的next即可。在后面需增加結(jié)點(diǎn)(即一個(gè)此類型的結(jié)構(gòu)體變量)時(shí),只要將原鏈尾結(jié)構(gòu)體變量中的引用自身的指針指向新增加的結(jié)點(diǎn)即可。

4靈活應(yīng)用指針還必須注意如下問題[2]

1)要注意指針變量的當(dāng)前值。我們?cè)谧鲋羔樧兞恐赶驍?shù)組的練習(xí)時(shí),經(jīng)常會(huì)有這樣的情況發(fā)生:

main()

{ int a[6],i,*p;

p=a;

for(i=0;i

scanf(“%d”,p++);

for(i=0;i

printf(“%d”,*p);}

當(dāng)我們運(yùn)行程序時(shí),輸出的6個(gè)數(shù)據(jù)和我們輸入的不一致,就是由于指針變量進(jìn)行了移動(dòng),已經(jīng)移出了我們的數(shù)據(jù)區(qū)域,當(dāng)再利用指針進(jìn)行訪問元素時(shí)必須把指針變量的當(dāng)前值重新指向數(shù)組中的第一個(gè)元素a[0]才可以。所以上面的程序在第二個(gè)for循環(huán)的前面加一條p=a或p=&a[0];程序的結(jié)果才是正確的。

2)在一維數(shù)組a[10]中,有語句p=a,則p+i和a+i都表示地址相當(dāng)于&a[i],p和a都是指針,但是它們有區(qū)別,p是變量,可以實(shí)現(xiàn)p++,a是常量,a的值不能改變。

3)當(dāng)指針指向字符串時(shí),字符指針變量和字符數(shù)組之間是有區(qū)別的。

A、字符數(shù)組由若干個(gè)元素組成,每個(gè)元素中存放一個(gè)字符,而字符指針變量中存放的是地址。

B、定義了字符數(shù)組之后,只能對(duì)各個(gè)數(shù)組元素賦值,不能用下面方法對(duì)字符數(shù)組賦值:char str[]; str=“I have a book!”;

而對(duì)指針變量,可以采用下面方法賦值:

char *a; a=“I have a book”;

賦給a的不是字符,是字符串的首地址。

C、對(duì)字符指針變量賦初值

char *a=“I have a book”等價(jià)于

char *a;

a=“I have a book”;

對(duì)數(shù)組初始化

char str[]=“I have a book”不等價(jià)

char str[20];

str[]=“I have a book”

5結(jié)束語

指針是C語言的難點(diǎn),但也是精髓,只要我們掌握了其本質(zhì)含義,也就不難了。上面所介紹的是C指針使用過程中的一些常用、重要的方法和規(guī)則。要達(dá)到熟練靈活應(yīng)用,還需要在實(shí)踐中不斷積累、總結(jié)、提高。

參考文獻(xiàn):

[1]郝長勝.C語言程序設(shè)計(jì)[M].內(nèi)蒙古:內(nèi)蒙古大學(xué)出版社,2007.

第11篇

關(guān)鍵詞: C語言程序設(shè)計(jì);實(shí)踐;案例教學(xué);考核

中圖分類號(hào):G424文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)10-2309-02

Discussion of Practice Effect in Teaching of C Language Programming

SUN Hua, YU Jiong, QIAN Yu-rong, TIAN Sheng-wei

(School of Software, Xinjiang University, Urumqi 830008, China)

Abstract:The article simply introduces the aims of teaching and methods of teaching, and analyses case method in practice teaching. Through building interest groups and reasonable examine mechanism, it can real make students master key point and difficult point in C language programming. Practice teaching plays a key role in course studying and outside class studying, and it can also promote self-confidence of students in the process of programming.

Key words:C language programming, practice, case teaching, examine

《C語言程序設(shè)計(jì)》[1]是軟件工程專業(yè)學(xué)生在大學(xué)一年級(jí)學(xué)習(xí)的第一門高級(jí)語言程序設(shè)計(jì)課程,屬于計(jì)算機(jī)專業(yè)本科基礎(chǔ)教學(xué)中第一層次的課程,也是一門必修的專業(yè)基礎(chǔ)課程[2]。本課程的學(xué)習(xí)為后序程序設(shè)計(jì)類課程以及相關(guān)專業(yè)的其他課程的學(xué)習(xí),起到至關(guān)重要的作用。采用何種教學(xué)方法和手段,保證學(xué)生能夠把C語言程序設(shè)計(jì)課程學(xué)好,不僅為以后的學(xué)習(xí)打牢專業(yè)基礎(chǔ),而且可以培養(yǎng)學(xué)生的自信心學(xué)習(xí)其他的程序設(shè)計(jì)類課程。

程序設(shè)計(jì)課程是一門需要?jiǎng)邮謱?shí)踐的課程,每一章節(jié)都需要學(xué)生編寫簡單的小程序以掌握所學(xué)的知識(shí)點(diǎn),在全部課程結(jié)束后,要求學(xué)生能夠獨(dú)立地設(shè)計(jì)、編寫和測(cè)試具有一定難度的程序。但是由于本課程的課時(shí)相對(duì)比較少,教學(xué)中的知識(shí)和難點(diǎn)又相對(duì)比較多。如何掌握課時(shí),既能夠完成教學(xué)大綱的要求,又能在較大程度上提高學(xué)生的編程水平,是一個(gè)非常有價(jià)值的研究課題。

該文將從實(shí)踐的角度,重點(diǎn)分析實(shí)踐教學(xué)在C語言程序設(shè)計(jì)課程學(xué)習(xí)過程中發(fā)揮的作用,并介紹實(shí)踐教學(xué)的效果。

1課程的教學(xué)目標(biāo)和教學(xué)方法

1.1教學(xué)目標(biāo)

在《C語言程序設(shè)計(jì)》教學(xué)大綱中,對(duì)教學(xué)目標(biāo)做出了明確的規(guī)定,要求學(xué)生通過該課程的學(xué)習(xí),一方面,學(xué)生具備利用計(jì)算機(jī)處理問題的思維方式和程序設(shè)計(jì)的基本方法,另一方面,課程的學(xué)習(xí)能夠啟發(fā)學(xué)生主動(dòng)將計(jì)算機(jī)引入到其它基礎(chǔ)課和專業(yè)課。

1.2教學(xué)方法

1)針對(duì)C語言程序設(shè)計(jì)課程中技術(shù)點(diǎn)比較多的特點(diǎn),教學(xué)形式以手把手實(shí)踐方式為主。提高學(xué)生的實(shí)踐動(dòng)手能力。

2)為加強(qiáng)和落實(shí)動(dòng)手能力的培養(yǎng),每堂課都預(yù)留一定的時(shí)間給學(xué)生進(jìn)行實(shí)踐練習(xí),對(duì)于每一個(gè)大章節(jié),結(jié)束后都安排一個(gè)階段性的項(xiàng)目實(shí)踐,以鞏固章節(jié)中所包括的技術(shù)點(diǎn),同時(shí)通過實(shí)踐,使學(xué)生深入掌握知識(shí)點(diǎn)的應(yīng)用范圍,應(yīng)用方式。

3)充分利用網(wǎng)絡(luò)資源進(jìn)行答疑、討論及分享。

為了充分調(diào)動(dòng)學(xué)生的實(shí)踐動(dòng)手能力,還將實(shí)踐結(jié)果與考核相掛鉤,督促學(xué)生在實(shí)踐過程中端正態(tài)度,認(rèn)真學(xué)習(xí)。

2實(shí)踐教學(xué)的方法

在教學(xué)目標(biāo)和教學(xué)方法中,反復(fù)強(qiáng)調(diào)了實(shí)踐教學(xué),采用各處教學(xué)方法,通過實(shí)踐、實(shí)踐、再實(shí)踐的路線,使學(xué)生能夠達(dá)到教學(xué)目標(biāo)的要求。我們?cè)凇禖語言程序設(shè)計(jì)》課程中采用了各種實(shí)踐活動(dòng),使實(shí)踐教學(xué)作用在課程學(xué)習(xí)過程中得到充分的發(fā)揮。

2.1案例教學(xué)

案例教學(xué)是實(shí)踐教學(xué)的一個(gè)很覺的教學(xué)方法[3],它不僅可以啟發(fā)學(xué)生,使學(xué)生快速理解所學(xué)的知識(shí),而且通過案例教學(xué),也能幫助學(xué)生了解各知識(shí)點(diǎn)的用法,幫助學(xué)生快速入門。《C語言程序設(shè)計(jì)》課程的實(shí)踐課時(shí)并不是無限的,如何利用有限的課時(shí),使學(xué)生能夠掌握重點(diǎn)和難點(diǎn)部分,需要一定的技巧和手段來完成。作為主講該課程的老師,應(yīng)該巧妙地安排,根據(jù)學(xué)生的特點(diǎn),設(shè)計(jì)出一些經(jīng)典同時(shí)又非常符合學(xué)生實(shí)情的案例。可以利用教研室的團(tuán)隊(duì),形成一個(gè)《C語言程序設(shè)計(jì)》的研究小組,計(jì)論并安排適合本專業(yè)學(xué)生特點(diǎn)的案例。

2.2建立興趣開發(fā)小組

在實(shí)踐過程中,應(yīng)該充分調(diào)動(dòng)學(xué)生的自我管理能力。讓學(xué)生相互幫助,有時(shí)候?qū)W生的講解比老師的答疑更容易讓學(xué)生接受。開發(fā)小組既可以讓學(xué)生自己建立,小組成員由小組的組長自己指定,也可以由老師安排。最后需要老師把關(guān),盡量保證每個(gè)小組在學(xué)期結(jié)束時(shí),都能完成一定數(shù)量的教學(xué)案例的設(shè)計(jì)、開發(fā)和測(cè)試任務(wù),每個(gè)小組成員在小組設(shè)計(jì)開發(fā)過程中,都有所為,有所收獲。

每個(gè)興趣開發(fā)小組完成的實(shí)踐教學(xué)任務(wù),都是由老師精心挑選的程序。有時(shí)需要根據(jù)學(xué)生的特點(diǎn),有針對(duì)性地采取不同的案例,分不同的難易程度。避免有些學(xué)生覺得過于簡單,有些學(xué)生又無法完成實(shí)踐教學(xué)要求的矛盾。同時(shí),還需要對(duì)學(xué)生的最終完成效果安排考核,對(duì)做的非常好的學(xué)生給予鼓勵(lì)與幫助,同時(shí)考核也能激勵(lì)學(xué)生認(rèn)真完成,深刻掌握程序設(shè)計(jì)思想的思維模式。

興趣開發(fā)小組之間也可以互相學(xué)習(xí),取長補(bǔ)短。這種建立開發(fā)小組的模式,讓學(xué)生在大學(xué)一年級(jí)就能體會(huì)到項(xiàng)目經(jīng)理的職責(zé)與作用。同時(shí)培養(yǎng)學(xué)生的合作溝通技能,為以后的職業(yè)發(fā)展奠定了基礎(chǔ)。

2.3合理的考核機(jī)制

實(shí)踐的最終成績,是由任課教師、學(xué)院安排相關(guān)的教師和從公司邀請(qǐng)的專家共同完成。在考核過程中,綜合考慮各方面的因素。

1)由任課教師決定過程的考核。[4]

學(xué)習(xí)是一個(gè)循序漸進(jìn)的過程,不同的學(xué)生,在分析問題、解決問題的能力上各有不同。由任課教師在實(shí)踐過程中,發(fā)現(xiàn)進(jìn)步比較大的學(xué)習(xí),發(fā)現(xiàn)關(guān)于思考以及敢干大膽嘗試的學(xué)生。而不是采用一刀切的方法,用統(tǒng)一的衡量方法考核學(xué)生。

2)由學(xué)院教師進(jìn)行橫向比較。

通過本屆學(xué)生與歷屆學(xué)生的對(duì)比,發(fā)現(xiàn)不同層面上的優(yōu)秀的學(xué),在全院范圍內(nèi)給予表彰。

3)由校外專家進(jìn)行縱向比較。

學(xué)生在實(shí)踐過程中所設(shè)計(jì)開發(fā)的課程設(shè)計(jì),考核時(shí)要求提交代碼及文檔,并要求完全按照規(guī)范撰寫實(shí)習(xí)報(bào)告,并由校外專業(yè)審核。整個(gè)課程設(shè)計(jì)與軟件開發(fā)的過程一致,從編寫第一個(gè)課程開始,就讓學(xué)生了解軟件開發(fā)過程中所涉及的各個(gè)環(huán)節(jié),使學(xué)生從大一開始就做到規(guī)范,并形成職業(yè)習(xí)慣。這必將終身受益。

最終對(duì)于設(shè)計(jì)開發(fā)優(yōu)秀的、進(jìn)步比較大的學(xué)生,都要給予一定的獎(jiǎng)勵(lì)。通過這種方式引導(dǎo)學(xué)生主動(dòng)積極地參與到實(shí)踐學(xué)習(xí)過程中。

2.4在實(shí)踐中領(lǐng)悟

在實(shí)踐過程中,老師的作用只是引導(dǎo)和指導(dǎo)學(xué)生完成課程學(xué)習(xí)過程中的實(shí)踐中比較難的部分,主要還是依靠學(xué)生自己在動(dòng)手實(shí)踐過程中領(lǐng)悟。仔細(xì)體會(huì)程序設(shè)計(jì)過程,包括構(gòu)思,設(shè)計(jì),調(diào)試,運(yùn)行,實(shí)現(xiàn)。這是一個(gè)不斷反復(fù)的過程,有時(shí)候,即使是很小的錯(cuò)誤,可能也需要花費(fèi)較多的時(shí)間發(fā)能發(fā)現(xiàn)。雖然目前看來,浪費(fèi)了比較多的時(shí)間,但是今后再犯相同錯(cuò)誤的可能性會(huì)降低。以后再分析他人寫的程序,也很容易發(fā)現(xiàn)同類的錯(cuò)誤。這顯然比老師直接參與講解的效果要好許多。因此,在實(shí)踐中領(lǐng)悟,一方面,可以加深印象;另一方面,也可以磨煉學(xué)生的毅力以及面對(duì)挑戰(zhàn)的勇氣。在學(xué)校中經(jīng)過反復(fù)實(shí)踐的鍛煉后,走出校門,才能滿足行業(yè)的需求,成為優(yōu)秀的工程師。

3實(shí)踐教學(xué)的作用

3.1在課程學(xué)習(xí)過程中的作用

根據(jù)教學(xué)大綱的要求,《C語言程序設(shè)計(jì)》課程是實(shí)踐性非常強(qiáng)的課程,因此,如何完成教學(xué)大綱中規(guī)定的要求,完成實(shí)踐教學(xué),達(dá)到強(qiáng)化學(xué)生的動(dòng)手能力、培養(yǎng)學(xué)生的學(xué)習(xí)興趣和啟發(fā)學(xué)生的程序設(shè)計(jì)思維的作用,實(shí)踐教學(xué)在這一系列的活動(dòng)過程中發(fā)揮的不要替代的作用。

3.2對(duì)課外實(shí)踐的指導(dǎo)作用

《C語言程序設(shè)計(jì)》課程的教學(xué)過程是,學(xué)習(xí)-實(shí)踐-再實(shí)踐。一次實(shí)踐難以達(dá)到效果[5],需要反復(fù)實(shí)踐。高校培養(yǎng)軟件專業(yè)的人才的培養(yǎng)目標(biāo)是專業(yè)的工程師。學(xué)校學(xué)習(xí)實(shí)踐的結(jié)束,也是社會(huì)實(shí)踐的開始。經(jīng)過四年實(shí)踐鍛煉培養(yǎng)的大學(xué)生,走出校門后,企業(yè)不需再培訓(xùn)或者只需經(jīng)過簡單的職業(yè)培訓(xùn),就可以上崗。因此,在校期間實(shí)踐教學(xué)就顯得格外重要,更加需要學(xué)生們珍惜和利用實(shí)踐機(jī)會(huì),把在校期間的實(shí)踐經(jīng)驗(yàn)直接應(yīng)用于職業(yè)生涯中。真正實(shí)現(xiàn)從實(shí)踐中來,到實(shí)踐中去的過程。

3.3提升自信心過程中的作用

在教學(xué)實(shí)踐過程中,通過將所學(xué)的知識(shí)運(yùn)用于實(shí)踐,最終能讓學(xué)生對(duì)知識(shí)點(diǎn)如何應(yīng)用有一個(gè)感性的認(rèn)識(shí),尤其是經(jīng)過反復(fù)調(diào)試,最終程序的運(yùn)行結(jié)果顯示在屏幕上,這種成功的喜悅之情是對(duì)學(xué)生的最大的肯定,能夠極大的提升了學(xué)生的自信心。這對(duì)于學(xué)生如何克服本課程后序的難點(diǎn)以及其它課程學(xué)習(xí)的畏難情緒也能起到很大的幫助作用。

4結(jié)束語

《C語言程序設(shè)計(jì)》課程中采用實(shí)踐教學(xué)是可行而且非常有必要的,該文簡要介紹了實(shí)踐教學(xué)的方法,重要分析了《C語言程序設(shè)計(jì)》課程中,實(shí)踐教學(xué)活動(dòng)發(fā)揮的重要作用。今后需要繼續(xù)探索教學(xué)方法和手段,促使實(shí)踐教學(xué)的作用發(fā)揮極致,使學(xué)生達(dá)到教學(xué)大綱的要求,實(shí)現(xiàn)教學(xué)目標(biāo),為社會(huì)輸送高級(jí)專業(yè)人才。

參考文獻(xiàn):

[1]譚浩強(qiáng).C程序設(shè)計(jì)(第三版)[M].北京:清華大學(xué)出版社,2005.7.

[2]新疆大學(xué)軟件學(xué)院.C程序設(shè)計(jì)教學(xué)大綱[Z].2009.3.

[3]余恒芳.《C#高級(jí)程序設(shè)計(jì)》課程改革與實(shí)踐之完善[J].福建電腦,2011(8):201-202.

第12篇

關(guān)鍵詞:C 語言;教學(xué)內(nèi)容;教學(xué)方法與手段;教學(xué)改革

1.引言

我院開設(shè)的“C語言程序設(shè)計(jì)”課程不但是計(jì)算機(jī)專業(yè)的必修課,而且也是非計(jì)算機(jī)專業(yè)的公共計(jì)算機(jī)基礎(chǔ)課。但在“C語言程序設(shè)計(jì)”課程教學(xué)中,許多學(xué)生都認(rèn)為C語言涉及的概念比較復(fù)雜,規(guī)則繁多,使用靈活,容易出錯(cuò),且程序設(shè)計(jì)課程邏輯性又很強(qiáng),[1]學(xué)生不能很好地理解算法,編寫程序也很困難,教師教學(xué)和學(xué)生學(xué)習(xí)都感到困難,并在不同程度上產(chǎn)生畏難心理。特別是我院將C 語言作為理工科學(xué)生進(jìn)校后首先接觸的第一門計(jì)算機(jī)基礎(chǔ)課,這種現(xiàn)象尤為明顯,而C語言基礎(chǔ)打不牢會(huì)直接影響后續(xù)專業(yè)課程的學(xué)習(xí)。因此如何改革“C語言程序設(shè)計(jì)”課程,進(jìn)一步提高教學(xué)效果成為一個(gè)緊迫任務(wù)。本文根據(jù)多年的程序設(shè)計(jì)課程的教學(xué)實(shí)踐,對(duì)“C語言程序設(shè)計(jì)”課程從教學(xué)內(nèi)容、教學(xué)手段、教學(xué)方法等方面提出幾點(diǎn)建議。

2.教學(xué)內(nèi)容的改革

2.1課堂教學(xué)內(nèi)容的改革

傳統(tǒng)的《C 語言程序設(shè)計(jì)》教學(xué)內(nèi)容主要包括C語言語法基礎(chǔ)、數(shù)據(jù)類型、程序控制結(jié)構(gòu)、函數(shù)、指針、文件等。教材在內(nèi)容組織上,在語法上講解過細(xì)、過多。在各章節(jié)的編程例子中,多數(shù)難度較大,分析較少;不夠形象,學(xué)生較難理解,且適用性不強(qiáng)。筆者本著“以任務(wù)為驅(qū)動(dòng)”的指導(dǎo)思想,在課堂教學(xué)過程中,對(duì)教學(xué)內(nèi)容重新進(jìn)行了歸納,將難點(diǎn)再次分散,以縮小臺(tái)階,達(dá)到循序漸進(jìn)。

2.2 實(shí)驗(yàn)教學(xué)內(nèi)容的改革

“C語言程序設(shè)計(jì)”是一門實(shí)踐性很強(qiáng)的課程,既要掌握概念,更要?jiǎng)邮志帉懗绦颉F渲饕蝿?wù)就是培養(yǎng)學(xué)生具有一定的閱讀程序、設(shè)計(jì)編寫程序的能力,分析問題、解決問題的能力和邏輯思維的能力。因此,上機(jī)實(shí)驗(yàn)是學(xué)習(xí)程序設(shè)計(jì)課程必不可少的實(shí)踐環(huán)節(jié),特別是C語言靈活、簡潔,更需要通過編程的實(shí)踐來真正掌握它。我院為非計(jì)算機(jī)系理工科學(xué)生開設(shè)的“C語言程序設(shè)計(jì)”課程的實(shí)驗(yàn)學(xué)時(shí)是32 學(xué)時(shí),共8個(gè)實(shí)驗(yàn)。由于實(shí)驗(yàn)課時(shí)較少,在實(shí)驗(yàn)內(nèi)容的安排上就顯得十分重要。實(shí)驗(yàn)的總體要求,強(qiáng)調(diào)上機(jī)實(shí)驗(yàn)要經(jīng)歷三個(gè)步驟:

(1) 上機(jī)前的準(zhǔn)備讓學(xué)生寫出實(shí)驗(yàn)預(yù)習(xí)報(bào)告。內(nèi)容包括對(duì)實(shí)驗(yàn)題目的理解和分析,選擇適當(dāng)算法,畫出流程圖并編寫程序。分析可能遇到的問題及解決的對(duì)策。準(zhǔn)備幾組測(cè)試程序的數(shù)據(jù)和預(yù)期的正確結(jié)果,以便發(fā)現(xiàn)程序中可能存在的錯(cuò)誤。

(2) 上機(jī)輸入和編輯程序,并調(diào)試運(yùn)行程序。首先調(diào)用C語言集成開發(fā)環(huán)境,輸入并編輯事先準(zhǔn)備好的源程序;然后進(jìn)行調(diào)式。在調(diào)試過程中,要充分利用C語言集成開發(fā)環(huán)境提供的調(diào)試手段和工具,例如單步跟蹤、設(shè)置斷點(diǎn)、監(jiān)視變量值的變化等。整個(gè)過程應(yīng)自己獨(dú)立完成。

(3)每次上機(jī)結(jié)束時(shí)老師都逐一檢查學(xué)生編寫的程序并打分評(píng)定。

3.教學(xué)方法與手段

在教學(xué)方法上,從以教師為主體的的方式轉(zhuǎn)向以學(xué)生為主體、教師為主導(dǎo)的教學(xué)方法。有效地培養(yǎng)學(xué)生的分析問題與解決問題的能力。以“遞歸函數(shù)”為例,筆者先給出問題:王小二自夸刀工不錯(cuò),有人放一張大的煎餅在案板上,問他:“餅不許離開案板,切100刀最多能切多少塊?”。[2]通過引導(dǎo)學(xué)生分析問題,建立數(shù)學(xué)模型q(n)=q(n-1)+n,q(0)=1(一刀都不切當(dāng)然只有1塊)。再通過與或節(jié)點(diǎn)圖分析數(shù)學(xué)模型的含義。最后給出遞歸算法程序。整個(gè)講解過中結(jié)合板書,逐步引導(dǎo),層層深入,取得了很好的教學(xué)效果。

在教學(xué)手段上,積極采用現(xiàn)代化的教學(xué)手段,如多媒體教學(xué)這樣有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,發(fā)展學(xué)生的主體能力;同時(shí)由于多媒體信息量大,也能夠優(yōu)化教學(xué)過程。但對(duì)于案例分析或程序的編寫過程,就發(fā)揮傳統(tǒng)教學(xué)的優(yōu)勢(shì),進(jìn)行課堂討論、板書講解、結(jié)合提問,將問題層層剖析、層層深入,達(dá)到師生互動(dòng)的效果,學(xué)生的想象力也會(huì)得到充分的發(fā)揮,對(duì)問題的理解也變得更容易。

4.課程考核辦法的改革

建立一個(gè)服務(wù)于課程目標(biāo)的學(xué)生學(xué)習(xí)評(píng)價(jià)方法是一項(xiàng)非常重要的工作,考核不是目的,“以考促學(xué)”才是考核的本質(zhì)。傳統(tǒng)的期末“筆試”這種單一的、“一考定終身”式的考核方式,已遠(yuǎn)遠(yuǎn)不能滿足課程的需要。為使考核真正發(fā)揮“以考促學(xué)”的作用,要重視對(duì)學(xué)生學(xué)習(xí)過程的考核,重視實(shí)際動(dòng)手能力的考核,側(cè)重考核學(xué)生對(duì)知識(shí)的融會(huì)貫通和靈活運(yùn)用能力,而不僅僅是基本理論、基本知識(shí)的掌握。具體的改革措施如下:

(1) 變單一考核為復(fù)合考核,從多個(gè)方面對(duì)學(xué)生進(jìn)行考核。課程總成績由平時(shí)成績、實(shí)驗(yàn)成績、期中成績、期末成績四個(gè)部分構(gòu)成。其中,平時(shí)成績考核包括對(duì)出勤、隨堂實(shí)訓(xùn)、課堂提問、作業(yè)等部分;實(shí)驗(yàn)成績考核是針對(duì)課程的8 次實(shí)驗(yàn)成績。

(2) 衡量這門課學(xué)習(xí)的好壞,不是看學(xué)生“知不知道”,而是“會(huì)不會(huì)干”。期末試題考核的方法不用是非題和選擇題,把重點(diǎn)放在讀程序、編制程序和調(diào)試程序。實(shí)踐表明,這種考核方法不但能更客觀地反映學(xué)生的學(xué)習(xí)情況,同時(shí)也能促進(jìn)學(xué)生學(xué)習(xí),起到良好的教學(xué)效果。

5.結(jié)束語

本文教學(xué)內(nèi)容、教學(xué)方法與手段的改革,是根據(jù)實(shí)際教學(xué)過程中學(xué)生存在的問題提出的,并已經(jīng)在“C語言程序設(shè)計(jì)”課程教學(xué)實(shí)踐中加以運(yùn)用,得到大部分學(xué)生的認(rèn)可,取得了較好的教學(xué)效果。只要我們不斷探索教學(xué)改革,我校的C語言程序設(shè)計(jì)課程的教學(xué)必會(huì)取得長足的進(jìn)步。

參考文獻(xiàn):

亚洲精品无码久久久久久久性色,淫荡人妻一区二区三区在线视频,精品一级片高清无码,国产一区中文字幕无码
一区二区国产欧美日韩 | 日韩区一区二区三区四 | 亚洲中文字幕dⅴd | 亚洲乱码AⅤ日本电影 | 五月婷婷在线视频免费 | 欧美日韩国产精品 |