亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        C程序設計教學中趣味性的挖掘

        2008-12-31 00:00:00吉根林
        計算機教育 2008年23期

        摘要:C程序設計課程中概念繁雜,例題繁多,不少學生死記硬背。針對這種情況,本文從激發(fā)興趣、創(chuàng)造成績入手,給出了4個教學示例的組織過程,特點是起點簡單,步驟間逐步添加知識點,步步有成果,基本覆蓋了c程序設計課程的核心內容,能起到通過趣味促進實踐、激發(fā)創(chuàng)造力的作用。

        關鍵詞:程序設計;教學組織;相似性;抽象;實踐

        中圖分類號:G642

        文獻標識碼:B

        1引言

        C程序設計課程一般開設在大一上學期,大多數學生處在從中學學習方法向大學學習方法的過渡期,他們知道這門課程是計算機專業(yè)的第一塊基石,卻常常以死記硬背的方法應付,更無法找到課程的趣味。對初學者而言,C程序設計語言課程的概念繁雜,例題繁多,教材內容給讀者的系統感不強??蓪嶋H教學中,理論課時和上機課時常顯不足,教師忙于完成教學內容,知識點間的聯系常被淡化。如何在增加課時的前提下,提高教學效率,是一個值得關注的教學課題。

        學習的第一動力是興趣,筆者在多年的C程序設計教學中,感到最無奈的是學生缺乏對課程的興趣。編程類課程的趣味性,一在于其中知識點的聯系,二在于成果有實際的應用價值。教師的教學重點應是通過教材內容的重組織,引導學生發(fā)掘課程興趣點,帶動課程難點的學習。雖然教學示例俯手皆拾,但示例的選擇、組合卻可以匠心獨到。

        示例的組織不僅應自然顯示出同類問題、方法的代碼相似性,更應展現出層次遞進的抽象思維過程;示例的組織應讓每一步都有新意,但難度變化不應過大,還應讓每一步都有成果,成果是興趣的激發(fā)點;示例的組織還應既便于教師連續(xù)講解,也便于暫停數次,讓學生自我探索實踐。筆者在課程教學中有意摸索、積累了若干此類示例,在此拋磚引玉。

        2數值程序的趣味

        在講解循環(huán)結構和函數時,數制轉換程序常常作為示例,但這么一個涉及到計算機專業(yè)最基本概念的程序若只被提及一次,實在太可惜了??梢栽噷⒃撌纠纸鉃橐韵?個步驟。

        第1階段,講解將十進制數轉換為二進制數的程序,這個程序以main函數的形式展現給學生,讓學生體會到循環(huán)的流程和調試的成果。這是本例的最基本目標。

        第2階段,改造代碼為函數A1,函數有一個參數x,實現將任意十進制數x轉換為二進制數的功能。這提升了程序的結構。

        第3階段,擴展函數A1為函數A2,在函數接口中增加參數m、n,實現將m進制數x轉換為n進制數的功能。函數在具體代碼的基礎上,抽象程度有所提高。

        第4階段,設計main函數,反復調用函數A2,計算1至100所有十進制數的二、三、…、九進制的表示,并將結果輸出到某文本文件中。

        第5階段,將結果文件內容,粘貼到Excel文件中,排版成一張精美的各進制的數字對照表。

        以上每個階段所涉及的技術都屬于基本技能,但以一條主線帶動學生,逐步深入,步步都有成果。與Excel聯合應用,更使學生開闊了學習和實踐的視野。

        3類型變換程序的趣味

        在講解字符串處理時,類型轉換是基本例題。如將數值轉換數字串,將數字串轉換為數值等。結合數制概念,可將問題多樣化。雖然教學意圖是開闊學生思路,卻常常使學生感到程序繁雜無序。實際上,合適的示例組合可促進學生自己發(fā)現、領悟其中的規(guī)則??梢栽噷⑦@些示例組成以下6個步驟。

        第1階段,講解函數B1,函數有參數s,實現將lO進制數字串s轉換為10進制整數的功能。

        第2階段,擴展函數B1功能,在接口中增加參數k,實現將k進制數字串轉換為k進制的整數的功能。通過代碼的抽象,強化了對核心代碼的認識,也降低了編程難度。

        第3階段,講解函數B2,函數有參數x,實現將10進制整數x轉換為10進制數字串的功能。

        第4階段,擴展函數B2功能,在接口中增加參數k,實現將k進制整數轉換為k進制數字串的功能。

        第5階段,設計函數B3,函數有參數s、m、t、n,調用Bl函數,將m進制數字串s轉換為m進制整數;調用上節(jié)中的A2函數,將m進制整數轉換為n進制整數;調用B2函數,將n進制整數轉換為n進制數字串。

        第6階段,設計main函數,反復調用函數B3,計算十進制數字串“001”至“100”對應的二、三、…、九進制數字串;將結果輸出到文本文件;將文件內容粘貼到Excel文件中,排版成一張與上節(jié)相同的各進制數字串對照表。

        以上6個階段,以易于掌握的函數入手,通過增加函數參數提高函數的抽象性,增強函數的功能,第2、4階段的成果都有一定的應用價值,第5、6階段培養(yǎng)了函數組合調用的能力。

        4加密、解密程序的趣味

        在字符串編程的練習中,對稱加密、解密算法是一個有趣的話題,可以充分利用它引導學生做更深入的實踐。可以試將此示例分解為以下6個步驟。

        第l階段,講解加密函數C1,函數有參數s、k,對存于字符數組s的明文采用密鑰k進行對稱加密。這一短小精干的程序可以讓學生體驗字符串操作的一般方法。

        第2階段,擴展函數C1,在接口中增加參數n、f2,實現讀取n指定的明文文件,將其中的每行字符串用密鑰k加密,生成密文文件f2;設計main函數,實現獨立的加密程序。

        第3階段,講解解密函數C2,函數有參數s、k,對存于字符數組s的密文采用密鑰k進行對稱解密。

        第4階段,擴展函數C2,在接口中增加參數f1、f2,實現讀取n指定的密文文件,將其中的每行字符串用密鑰k解密,生成明文文件位;設計main函數,實現獨立的解密程序。

        第5階段,使用main(int argo,char*argv)函數的接口參數,將加密、解密程序合二為一,具體執(zhí)行時,使用命令行參數識別加密或解密功能。如命令行參數是“-e a1.txta2.txt 5”表示對a1.txt使用密鑰5加密,結果密文存于a2.txt;如命令行參數是“-d a2.txt a3.txt 5”表示對a2.txt使用密鑰5解密,結果明文存于a3.txt。

        第6階段,對于優(yōu)秀的學生,還可以鼓勵他們進一步探索,在沒有密鑰情形下如何猜測某個密文文件的密鑰進行解密。這種探索性的實踐會帶給學生更廣闊的編程視野。

        在以上6個階段中,C1和C2函數非常相似,對這種相似性的留意不僅能強化編程中的概念,更能提高編程、調試的效率。最終的軟件成果已經具備商業(yè)軟件的雛形,學生們會更加興奮。

        5打印字符圖案的趣味

        在學習循環(huán)、分支結構時,用字符打印特定的幾何圖案是最簡的示例??上н@個示例的思路沒有繼續(xù)延伸,只是局限在打印完全規(guī)則的圖案。可以試將此示例分解為以下7個步驟。

        第1階段,講解一個打印固定規(guī)則圖案的函數Dl,實現用某種字符打印一個固定形狀的三角形。

        第2階段,擴展函數DI,在接口中增加參數base、angle、scale,base是圖案打印基點,angle是圖案旋轉角度(0或90或180或270),scale是圖案的大小比例的參數,值可以是1或2或3等正整數。

        第3階段,按照函數D1的形式,引導學生編程更多的打印規(guī)則圖案的函數:建立函數的調度管理函數D2;

        第4階段,利用二維數組存儲圖案數據,數組元素為1或0,表示在相應位置上打印或不打印字符。二維數組相當于任意字符圖案的數據結構。設計函數D3,參數是一個二維數組,實現打印任意不規(guī)則圖案的功能。

        第5階段,擴展函數D3,在接口中增加參數base、angle、scale,意義同第2階段,函數的功能也類似第2階段。

        第6階段,調試函數D3的圖案數據,建立起對任意圖案的數據增加、修改、調用等管理函數D4.

        第7階段,設計函數D5,以菜單形式組織函數D2、D4,實現規(guī)則圖案和任意圖案的多種形式的打印。此時程序的結構已經比較復雜了。這個示例不僅充分鍛煉了編程技術,更為將來學習圖像處理技術做了鋪墊。

        6結束語

        本文給出了數值程序、類型變換程序、加密/解密程序、打印字符圖案等4個教學示例的組織過程,每個示例的起點簡單,每個步驟涉及的新知識較少,思維跳躍小,但每個步驟的收獲喜人,最終涉及到了除指針、結構之外的所有c語言知識點。每個示例可以一次講解,也可以分步驟多次講解,或空缺一二步驟,讓學生實踐完成,尤其能起到通過懸念、興趣促進實踐、激發(fā)創(chuàng)造力的作用。

        中文字幕日本熟妇少妇 | 少妇激情一区二区三区| 日韩av毛片在线观看| 蜜臀av无码人妻精品| av无码精品一区二区三区四区| 中文字幕大乳少妇| 久久精品国产9久久综合| 无码av中文一区二区三区桃花岛| 国产精品人妻一码二码尿失禁 | 日本一区二区三区清视频| 国产中文三级全黄| 精品国产乱码久久久软件下载| 男性一插就想射是因为啥| 青青草免费视频一区二区| 亚洲av成人无码久久精品老人| 人人妻人人澡人人爽久久av| 日韩亚洲中文图片小说| 国产精品自拍视频免费观看| 97se色综合一区二区二区| 亚洲精品综合一区二区| 人妻精品久久中文字幕| 国产视频一区2区三区| 亚洲av乱码一区二区三区按摩| 久久久久亚洲av无码专区| 亚欧免费无码AⅤ在线观看| 亚洲成年国产一区二区| 内地老熟女老少配视频| 亚洲日韩图片专区小说专区| 国产av精品久久一区二区| 99久久无码一区人妻| 四虎影库久免费视频| 在线你懂| 媚药丝袜美女高清一二区| 国产成熟人妻换╳╳╳╳| 亚洲午夜精品久久久久久抢| 在线观看亚洲视频一区二区| 亚洲一区二区三区影院| 日本a级特黄特黄刺激大片| 中文字幕成人精品久久不卡| 国产婷婷色一区二区三区深爱网| 亚洲精品无码成人a片|