• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      “C語言程序設(shè)計”課程案例教學(xué)法研究

      2018-04-26 06:39:23白魚秀
      微型電腦應(yīng)用 2018年3期
      關(guān)鍵詞:C語言程序設(shè)計C語言程序設(shè)計

      白魚秀

      (榆林學(xué)院 信息工程學(xué)院,榆林 719000)

      0 引言

      C語言是目前最流行的程序設(shè)計語言之一,一直在計算機編程語言中占據(jù)數(shù)一數(shù)二的位置,在系統(tǒng)程序、嵌入式系統(tǒng)開發(fā)中占有不可替代的作用。學(xué)習(xí)“C語言程序設(shè)計”課程,可以掌握基本的編程技能,鍛煉計算思維方法,提高分析和解決問題的能力;了解計算機軟件的生成過程;便于進一步學(xué)習(xí)其它語言,C語言是其它編程語言的基礎(chǔ),容易學(xué)習(xí),使用方便?!癈語言程序設(shè)計”課程是一門理工科學(xué)生必修的教學(xué)實踐課程,通過學(xué)習(xí)“C語言程序設(shè)計”課程,理解計算機強大能力所在,更好的利用計算機解決本專業(yè)領(lǐng)域問題。

      1 目前存在的問題

      傳統(tǒng)的C語言教學(xué)方法,主要把教學(xué)重點放在C語言的語法等理論知識上,而對如何分析問題、解決問題很少涉及,忽略實踐編程,缺乏對學(xué)生自學(xué)能力、編程和調(diào)試能力的培養(yǎng)。目前存在的問題主要涉及以下幾個方面。

      課程之初,傳統(tǒng)“C語言程序設(shè)計”教材前兩個章節(jié)都是在介紹程序的詞法、語法等理論知識。如果按照課本按部就班的講授,抽象的概念,枯燥的語法等晦澀難懂內(nèi)容[1],使得學(xué)生覺得C語言枯燥,不易理解,對程序設(shè)計的興趣和好奇心消失殆盡,打擊了學(xué)生的學(xué)習(xí)積極性。從而對C語言程序設(shè)計產(chǎn)生厭煩心理,失去學(xué)習(xí)的興趣,畏懼程序設(shè)計課程。

      課程之中,學(xué)生在學(xué)習(xí)過程中不知道學(xué)習(xí)C語言能解決什么實際問題,感覺只是解決一些計算問題,求解水仙花數(shù)、完數(shù)和素數(shù)等[2]。實驗課時,冗繁的語法規(guī)則和編寫程序頻頻出錯,學(xué)生失去學(xué)好C語言程序的信心。進而,害怕自己編寫程序解決問題,只會照抄課本程序,把代碼原封不動的輸入電腦,當(dāng)編譯鏈接出現(xiàn)錯誤時,則束手無策,沒有調(diào)試解決問題的能力[3]。

      課程之終,學(xué)生學(xué)習(xí)“C語言程序設(shè)計”課程一學(xué)期的效果是,只是掌握了C語言的概念,結(jié)構(gòu)等語法知識,可以看懂部分簡單的程序代碼,自己不能針對具體問題,獨立設(shè)計合理簡單的C語言程序算法解決問題[4]。甚至有的學(xué)生為了應(yīng)對考試,而死記硬背源程序代碼。不能真正掌握編程思想和編程能力[5]。

      2 C語言程序設(shè)計課程案例教學(xué)法

      本案例教學(xué)法以“引入案例-分析案例-知識分解-編碼運行-深化案例”層層遞進的方式,激發(fā)學(xué)生學(xué)習(xí)興趣,增強實踐動手能力。

      2.1 教學(xué)內(nèi)容

      傳統(tǒng)的“C語言程序設(shè)計”教材通常分為8章。依次為C語言概述、數(shù)據(jù)類型運算符、程序控制結(jié)構(gòu)、函數(shù)、數(shù)組、指針、自定義數(shù)據(jù)類型和文件。各個章獨立分散,沒有一個案例融會貫通其中。本教學(xué)法把所有知識點以“學(xué)生成績管理系統(tǒng)”為主線重新劃分,優(yōu)化整合課程內(nèi)容,循序漸進,讓學(xué)生掌握C語言的各個知識點時,最終實現(xiàn)“學(xué)生成績管理系統(tǒng)”,實現(xiàn)學(xué)生成績的增加、刪除、修改、查找和統(tǒng)計等基本操作。

      通過對 “學(xué)生成績管理系統(tǒng)”案例功能模塊的層層分析與實現(xiàn),由淺入深,逐步提出問題,引出新的知識點并進行代碼實踐解決問題,從而引發(fā)學(xué)生學(xué)習(xí)和思考,直至全面實現(xiàn)該系統(tǒng)。功能模塊的劃分以層層遞進實現(xiàn)該系統(tǒng)為主線,并把傳統(tǒng)C語言程序設(shè)計教材內(nèi)容貫穿在整個實現(xiàn)過程中。不再是單純的講授理論知識點,所有理論知識點的引入都是為了解決提出的新問題。

      2.2 教學(xué)方法

      以“學(xué)生成績管理系統(tǒng)”為主線,把“C語言程序設(shè)計”教材內(nèi)容劃分為4章內(nèi)容,分別為輸入輸出、數(shù)據(jù)處理、程序結(jié)構(gòu)和構(gòu)造類型數(shù)據(jù)處理。此四章內(nèi)容涵蓋了“C語言程序設(shè)計”課程的所有知識點,各個章節(jié)知識點的劃分如表1所示。

      表1 知識點劃分

      (1)輸入輸出。任何C語言程序都必須有輸出。輸入輸出主要包含兩部分,基本輸入輸出和文件讀寫操作。首先是簡單學(xué)生的成績輸入,輸出顯示。講解輸入時引入基本數(shù)據(jù)類型,整形、浮點型和字符型。調(diào)用輸入輸出庫函數(shù),每次運行都必須重新輸入,并且結(jié)果無法長期保存,引入文件讀寫操作。講解文件讀寫操作過程中,引入指針的概念。指針是C語言程序的精華,通常指針內(nèi)容都是在教材最后章節(jié),學(xué)生對前面章節(jié)學(xué)的云里霧里,到指針更是一頭霧水。所以提前引入指針,使得學(xué)生提前接受和理解。編寫簡單程序代碼,輸入并輸出一個學(xué)生成績信息,如圖1所示。

      學(xué)生成績管理系統(tǒng)請輸入學(xué)生的學(xué)號、姓名、英語、高數(shù)、C語言成績:1612230101 王博 84 79 89學(xué)號姓名英語高數(shù)C語言1612230101王博84.0079.0089.00Pressanykeytocontinue

      圖1 學(xué)生相關(guān)信息

      并更改數(shù)據(jù)類型,比較他們之間的區(qū)別。

      (2)數(shù)據(jù)處理。向計算機系統(tǒng)輸入數(shù)據(jù),不是為了單純顯示數(shù)據(jù),主要是為了處理數(shù)據(jù)。計算這名學(xué)生總成績、平均分。引入算術(shù)、關(guān)系和邏輯等運算符,從而計算并顯示該學(xué)生的總成績和平均分。進一步,我們按五分制(優(yōu)秀、良好、中等、及格和不及格)顯示該名學(xué)生的平均成績,引入程序控制三大結(jié)構(gòu),順序、選擇和循環(huán),輸出如圖2所示。

      (3)程序結(jié)構(gòu)。完成計算處理后,進一步增加增刪改查操作,引入結(jié)構(gòu)化程序設(shè)計“自頂向下、逐步求精”的思想和函數(shù)調(diào)用的概念。設(shè)計編寫不同功能函數(shù),實現(xiàn)成績的輸入、增加、刪除、修改、查詢、統(tǒng)計和輸出顯示等功能?!俺煽児芾硐到y(tǒng)”功能模塊圖,如圖3所示。

      學(xué)生成績管理系統(tǒng)請輸入學(xué)生的學(xué)號、姓名、英語、高數(shù)、C語言成績:1612230101 王博 84 79 89學(xué)號姓名英語高數(shù)C語言1612230101王博84.0079.0089.00總成績平均成績五分制252.0084.00良好Pressanykeytocontinue

      圖2 計算處理

      (4)構(gòu)造類型數(shù)據(jù)處理。前3章的學(xué)習(xí),我們可以計算處理一個學(xué)生的成績,但是要計算一個班級50個同學(xué)的成績該如何解決。引入數(shù)組和結(jié)構(gòu)體的概念。結(jié)構(gòu)體封裝每個學(xué)生信息,數(shù)組保存班級學(xué)生人數(shù)。但是數(shù)組是靜態(tài)數(shù)據(jù)類型,更優(yōu)化的利用內(nèi)存空間,引入動態(tài)數(shù)據(jù)結(jié)構(gòu),鏈表操作,完成一個班級的學(xué)生成績管理,如圖4所示。

      2.3 教學(xué)手段

      傳統(tǒng)“C語言程序設(shè)計”課程總課時為72學(xué)時(36理論學(xué)時+36實踐學(xué)時)。本教學(xué)法在原有大綱規(guī)定學(xué)時之內(nèi),同樣采用理論和實踐相結(jié)合的方式,但是把傳統(tǒng)的固定每章的驗證性實驗改為以“學(xué)生成績管理系統(tǒng)”的不斷擴展與優(yōu)化。并采用個人獨立和團隊合作兩步完成整個系統(tǒng)的開發(fā)。

      首先,對每一章內(nèi)容,學(xué)生掌握課堂知識點后,直接進行實踐操作,獨立的完成簡單的代碼程序,讓學(xué)生在“做中學(xué)”中加深理論知識。這樣很大地提高學(xué)生的積極性,提高其探索發(fā)現(xiàn)問題,解決問題的能力。

      其次,整個班級學(xué)生分小組完成“學(xué)生成績管理系統(tǒng)”的整合和調(diào)試運行,3個學(xué)生為一個小組,大家互相學(xué)習(xí)討論各個函數(shù)功能模塊的編程方法,學(xué)習(xí)好的編程技巧,修改調(diào)試程序,最終完成整個“學(xué)生成績管理系統(tǒng)”的整合。以小組為單位,不僅可以降低大家對獨立完成系統(tǒng)開發(fā)的恐懼感,而且可以促進大家相互學(xué)習(xí)、相互幫助的團隊協(xié)作精神,體會軟件開發(fā)的成就感。

      2.4 考核方式

      傳統(tǒng)的考核方式為平時成績(30%)+筆試成績(70%),不能檢測出學(xué)生的編程能力及其真實水平。此考核方式不同于傳統(tǒng)的紙質(zhì)閉卷考試形式,主要分為系統(tǒng)考核(60%)和代碼改錯(40%)兩部分。

      其一,每個小組實現(xiàn)和完善“學(xué)生成績管理系統(tǒng)”,提交課程報告并進行系統(tǒng)答辯,對其開發(fā)成果進行評分。同時,小組之間互相分享在開發(fā)系統(tǒng)時遇到的問題,以及如何分析和解決問題。

      其二,為每一個小組根據(jù)“學(xué)生成績管理系統(tǒng)”系統(tǒng),分別設(shè)計不同程序段的代碼改錯,要求小組在2個小時內(nèi)通過編譯調(diào)試運行。最終根據(jù)每個小組修改的代碼程序段進行量化評分。

      筆者依托榆林學(xué)院2017級計算機科學(xué)與技術(shù)專業(yè)學(xué)生,實踐了此C語言案例教學(xué)法。結(jié)果表明,用案例教學(xué)法授課的班級學(xué)生成績普遍高于傳統(tǒng)方式授課班級學(xué)生成績。

      3 總結(jié)

      通過在計算機專業(yè)大一新生中運用該案例法進行“C語言程序設(shè)計”課程教學(xué),實際跟蹤學(xué)生學(xué)習(xí)該課程過程發(fā)現(xiàn),學(xué)生理論知識水平和實踐動手能力顯著提高。此方法極大的吸引了學(xué)生的學(xué)習(xí)興趣,調(diào)動了學(xué)生的實踐動手能力,激發(fā)了學(xué)生探索問題、解決問題的能力,使學(xué)生在實踐編程中理解和掌握了理論知識。

      [1] 謝麗霞.基于混合式學(xué)習(xí)的“C語言程序設(shè)計”課程教學(xué)研究[J].教育教學(xué)論壇,2017(20):169-172.

      [2] 項響琴.德國理念指導(dǎo)下的教學(xué)方法改革——以C語言課程為例[J].計算機教育,2013(21):37-41.

      [3] 郭鵬,張海燕.地方高校轉(zhuǎn)型中的C語言課程改革研究與實踐[J].石家莊學(xué)院學(xué)報,2017(3):156-160.

      [4] 徐亦丹,劉瑛.C語言程序設(shè)計案例教學(xué)法研究[J].電腦知識與技術(shù),2017(6):191-192.

      [5] 項響琴.“無紙化”教學(xué)模式下創(chuàng)新型人才培養(yǎng)的研究與實踐[J].電腦知識與技術(shù),2015(35):87-88.

      猜你喜歡
      C語言程序設(shè)計C語言程序設(shè)計
      基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
      計算機教育(2020年5期)2020-07-24 08:52:56
      從細節(jié)入手,談PLC程序設(shè)計技巧
      電子制作(2019年9期)2019-05-30 09:42:04
      基于C語言的計算機軟件編程
      電子制作(2018年16期)2018-09-26 03:27:08
      高職高專院校C語言程序設(shè)計教學(xué)改革探索
      以“學(xué)生為中心”的《C語言程序設(shè)計》教學(xué)設(shè)計探究
      基于翻轉(zhuǎn)課堂的《C語言程序設(shè)計》課程教學(xué)系統(tǒng)的實現(xiàn)與研究
      軟件工程(2016年8期)2016-10-25 16:02:07
      淺談《C語言程序設(shè)計》課程的教學(xué)改革
      《C語言程序設(shè)計》課程的教學(xué)改革與實踐
      科技視界(2016年22期)2016-10-18 16:12:24
      PLC梯形圖程序設(shè)計技巧及應(yīng)用
      論子函數(shù)在C語言數(shù)據(jù)格式輸出中的應(yīng)用
      湾仔区| 石首市| 陈巴尔虎旗| 兴仁县| 达拉特旗| 稻城县| 襄垣县| 普陀区| 峨眉山市| 资中县| 基隆市| 沙田区| 英吉沙县| 星座| 大邑县| 临漳县| 元谋县| 怀仁县| 宁河县| 普宁市| 瑞昌市| 积石山| 革吉县| 郴州市| 泊头市| 永德县| 建平县| 荥经县| 和平县| 墨脱县| 弥渡县| 绥德县| 肇东市| 宜川县| 全州县| 张掖市| 晋城| 聂荣县| 凌源市| 祁连县| 绥滨县|