999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

數據結構精品課程實習操作規范探討

2011-12-31 00:00:00崔青劉淑嫻張振宇
計算機教育 2011年17期


  摘 要:數據結構是計算機專業的基礎核心課程,實踐教學是其必要的組成部分。本文針對新疆大學學生在數據結構課程實踐教學環節中存在的一些問題,提出了規范的實習操作步驟。通過規范的實習操作步驟培養學生科學化的工作作風,有效地避免課程實踐中的錯誤,指導學生設計良好的數據結構及算法,編寫出優美的程序。
  關鍵詞:數據結構;精品課程;實踐教學;算法
  基金項目:新疆大學2008年精品課程建設項目(2008[146號])。
  作者簡介:崔青,女,講師,研究方向為數據結構及程序設計;劉淑嫻,女,講師,研究方向為數據結構;張振宇,男,副教授,研究方向為數據結構。
  數據結構是對計算機程序設計要求較高的電子信息類各專業的基礎核心課程,有著較強的技術性和實踐性。它主要是培養學生的算法設計與分析的基本理論知識與技能,該課程強調理論和實踐的統一,突出的是對學生動手能力的培養。為了幫助學生更好地學習數據結構方面的知識,充分理解和掌握算法設計所需要的技術,為信息類后續專業課程的學習打下一個好的基礎,上機實習就顯得十分重要。實習過程中,要求學生運用所學知識,結合一些典型問題,經過分析、設計、編碼、調試等各環節的訓練,去深刻理解、進而達到牢固掌握所用到的一些技術,提高學生組織數據及編寫大型程序的能力。
  如今,隨著計算機技術以及計算機性能的提高,軟件開發的復雜度也日趨增加,一種常用的軟件開發方法是將開發過程按工程化理論分為四個階段:分析、設計、實現和維護。雖然數據結構這門課程的實習題的復雜度遠不能跟實際中真正的軟件系統比較,但為了培養一名軟件工作者所應具備的科學工作的方法和作風,規范的實習操作步驟是必不可少的[1]。
  1 實習操作規范的重要性
  上機實習是對學生的一種全面綜合訓練,是與課堂教學、自主學習和課后練習相輔相成的必不可少的一個教學環節。實習能夠幫助學生學會如何把書上學到的知識用于解決實際問題,培養他們開發軟件所需要的動手能力。實習操作還能使書上的知識變“活”,幫助學生深化理解和靈活掌握教學內容。實習題通常是軟件設計的綜合訓練,包括分析問題、總體設計、界面設計、程序設計基本技能和技巧、協同合作、乃至一整套軟件工作規范的訓練。此外,更重要的一點是:計算機是比任何教師都嚴格的檢查者[3]。
  在以往的教學實踐中,經常發現很多學生抱怨說這門課學不明白,實習操作時不知從何下手,設計算法時沒有任何頭緒,甚至有些已經用偽代碼表示的算法都很難用具體的程序設計語言實現,程序出錯了,有時花一兩個小時才找出一個錯誤,甚至是一無所獲,使學生很受打擊。實際上,在實習操作過程中按步驟規范有效的展開程序設計是有效克服這種情況的重要手段之一。但是,真正在進行實驗教學時,我發現有些學生不屑于按實習步驟規范去做,他們有些人直接在電腦前編寫代碼,甚至對于實習步驟的要求和建議看都不看一遍,認為那是浪費時間,這對該課程的學習是及其有害的。正確的實習步驟規范不僅可以培養學生科學化的工作作風,而且還能有效地避免錯誤[2]。
  2 實習操作步驟規范
  從多年來教學實習的經驗看,在初學階段執行嚴格的實習步驟規范(包括上機操作規范),機時利用率會大大提高,有助于養成良好的程序編制風格,培養嚴謹、科學、高效的工作方式。根據數據結構課程的特點,以及多年的教學經驗我總結出以下具體的實習步驟規范[3]。
  首先建議3~4個同學組成一個小組,設組長一人,由組長負責提交階段成果,組員之間明確各自的任務,以達到相互研究、討論、互相學習、共同提高的目的。這也是以后程序設計人員所要具備的最基本素質之一:團隊協作素質。
  1) 問題分析與任務定義[1]。
  一般地,實習題目的語言敘述相對來講比較簡單,或者不同的人理解時會產生歧義。因此,在進行設計之前,最重要的是充分分析和理解問題,明確問題任務:要求做什么,限制條件是什么。注意:這個步驟強調的是做什么,而不是怎么做。所以,在對問題進行描述時應避開算法和所涉及的數據類型,而是對所需完成的任務作出明確的回答。明確規定:
  輸入的形式和值的范圍;
  輸出的形式和值的范圍;
  程序所能達到的功能;
  準備測試數據:包括正確的輸入及其輸出結果和非法的輸入及其輸出結果;
  提交相應階段文檔。
  2) 結構設計與算法設計。
  在設計這一步驟中,按照以數據結構為中心的原則劃分模塊,對問題描述中涉及到的操作對象定義相應的數據類型,并按照算法所要達到的功能劃分模塊,定義主程序模塊和各抽象數據類型;定義主程序的流程以及各程序模塊之間的層次(調用)關系。在此基礎上,寫出算法框架。算法設計時考慮的因素較多,這一步的工作將直接影響最終程序的性能和執行效率。要綜合考慮系統功能,系統結構要簡單、合理、清晰并且易于調試。設計算法過程中,圍繞原則:正確性、可讀性、健壯性、高效率和低存儲量,提交相應項目規劃文檔。
  3) 詳細設計和編碼。
  詳細設計的目的是對算法設計的進一步求精。實現算法設計中定義的所有數據類型,用IF、WHILE和賦值語句等對每個操作按照算法規范只需要用偽代碼表示過程或函數。利用偽代碼的目的是避免過早陷入語言細節。最后再對詳細設計的結果進一步求精,用高級語言表示出來。
  編碼時要考慮如何編寫才能較快地完成調試是特別要注意的問題。一般地,每個子程序(或過程、函數)通常不要太長,不要超過40行為宜,最長不要超過60行,必要時可再分割成較小的過程,子程序(或過程、函數)包含的程序行數太多,易于造成理解上的困難。控制if、while 等語句的連續嵌套的深度,分支過多時應考慮使用switch語句。對每一段程序完成的功能和重要變量都應加以注釋,這會對程序的調試提供很多方便。另外,根據情況可以在程序中設立若干調試點,可以輸出若干提示信息,用于驗證和自己的設想是否一致。對于必要的輸入輸出,必須對它們的作用加以注釋說明,否則,在調試程序時無法了解需要輸入什么,輸出的又是什么。同時,一定要按格式書寫程序,分清每條語句的層次,便于發現語法錯誤。
  4) 靜態檢查。
  在上機前,學生需要將程序編碼以高級語言文本的形式實現,自己對程序先做認真的靜態檢查。大多數初學者編好程序后處于以下兩種狀態之一:一是對自己“精心制作的程序”的正確性深信不疑;另一種則是認為上機前的任務已經完成,尋找錯誤是上機的工作,這兩種態度都是不可取的。對初學者來說,當編寫的程序長度超過40行時,通常大多會含有語法錯誤或邏輯錯誤,上機動態調試絕對代替不了靜態檢查,否則調試的效率將是極低的。靜態檢查一般有兩種方法:一是用一組測試數據手動執行程序(通常先檢查單個模塊);二是通過與同學一起或給別人講解自己的程序而深入全面地理解程序的邏輯。
  5) 上機準備和上機調試程序。
  上機準備應做到以下幾個方面:首先,熟悉機器的用戶手冊;其次,熟悉高級語言用戶手冊或程序設計指導書;熟悉最常用的命令;最后,掌握好調試工具,考慮調試方案。如果機器上沒有現成的調試工具可供利用,可以自己先設計一些以供使用。上機調試時分模塊進行,應該做到自底向上,先調試底層模塊(過程或函數),再調試上層模塊,必要時可另寫一個調用驅動程序。這種表面看上去麻煩的工作實際上可以大大降低調試所面臨的復雜性,從而提高調試的工作效率。調試過程中遇到的各種異常現象往往是預料不到的,此時不要糾結,應該借助系統提供的調試工具確定錯誤,最后,整個程序進行聯調。調試正確后,認真整理源程序及其注釋,將帶有完整注釋且格式良好的源程序清單、測試用例和運行結果加以打印輸出。
  
  6) 實習報告的整理。
  最后是實習報告的整理。在程序開發過程中,逐步形成各種必要的文檔及資料。主要包括以下幾個部分的工作:首先進行需求及規格說明 ,進行問題描述,弄清求解的問題是什么;其次,說明存儲結構、主要的算法設計思想,并進行子程序(過程或函數)的規格說明,通過調用關系圖表示它們之間的調用關系;第三,在詳細設計過程中,主要算法的框架要能夠實現;第四,形成用戶手冊,進行程序的使用說明,并用調試報告來體現問題是如何解決的;最后,認真進行實習總結,在調試過程中與同學之間的討論和分析、對程序的改進設想、收獲的經驗與體會、主要算法的時空復雜度等方面都可以寫進報告中。做好這一步工作非常重要,通過整理和填寫實習報告的過程,學生能夠更深刻的認識到自己在實驗中存在的問題,加強自身設計思維的訓練,也能不斷提高和積累解決實際問題的動手能力,是學生對自身進行修正和完善的過程[4]。
  3 結語
  以上是數據結構這門課程經過多年教學經驗總結形成的具體的實習步驟規范。掌握數據結構和算法的基本理論是很重要的,同時利用面向對象的方法,進行數據抽象、設計抽象數據類型,編寫優美的程序的能力訓練同樣是非常必要的。這對于進一步引導同學獨立完成和解決工程實踐中的數據結構和算法的問題,靈活運用所學的理論知識,做到融會貫通,是很有意義的。目前在教授該課程時,要求學生能夠做到正確利用實習步驟規范,以此來提高學生算法設計與分析的技能以及上機實踐的效率,真正達到理論與實踐的統一,培養學生科學的工作作風和動手能力,效果不錯。
  參考文獻:
  [1] 顧翔.“數據結構”實踐教學探討[J]. 信

主站蜘蛛池模板: 国产乱码精品一区二区三区中文| 日本欧美视频在线观看| av在线无码浏览| 性69交片免费看| 色综合婷婷| jizz亚洲高清在线观看| 2021国产乱人伦在线播放| 亚洲乱码视频| 色屁屁一区二区三区视频国产| 九九热精品在线视频| 日韩色图区| 亚洲国产成人麻豆精品| 欧美不卡视频在线观看| 国产熟女一级毛片| 小说区 亚洲 自拍 另类| 精品国产电影久久九九| 大陆精大陆国产国语精品1024| 国产99热| 免费无码一区二区| 欧美一区二区三区国产精品| 国产成人精品高清不卡在线| 久久香蕉欧美精品| 欧美成人午夜视频| 亚洲美女高潮久久久久久久| 亚洲黄网在线| 国产激爽大片在线播放| 先锋资源久久| 国产乱人伦精品一区二区| 日韩a级片视频| 亚洲天堂久久新| 青青青视频91在线 | 国产精品永久不卡免费视频 | 成人午夜久久| 亚洲中文精品人人永久免费| 国产污视频在线观看| 亚洲天堂视频在线免费观看| 国产欧美高清| 中日无码在线观看| 亚洲精品另类| 88av在线| 亚洲美女久久| 国产在线精品美女观看| 国产高清毛片| 99热国产这里只有精品无卡顿"| 全部免费毛片免费播放| 久久成人免费| 中文字幕欧美日韩| 麻豆精品在线播放| 高清国产在线| 福利视频一区| 日韩在线播放中文字幕| 久久国产成人精品国产成人亚洲| 国产欧美精品午夜在线播放| 免费Aⅴ片在线观看蜜芽Tⅴ| 婷婷五月在线| 国产精品久久自在自线观看| 亚洲h视频在线| 白丝美女办公室高潮喷水视频| 国产精品久久久久久搜索| 亚洲第一成年人网站| 2021最新国产精品网站| 免费人成网站在线观看欧美| 久久99热66这里只有精品一| 色久综合在线| 欧美日韩国产精品综合| 亚洲va视频| 喷潮白浆直流在线播放| 久久毛片网| 亚洲日韩在线满18点击进入| 亚洲综合二区| 久久国产精品电影| 久久久久久久久久国产精品| 国产在线小视频| 日本免费高清一区| 亚洲一道AV无码午夜福利| 国产黄色爱视频| 日本三区视频| 99热这里只有精品在线播放| 色婷婷电影网| 亚洲三级成人| 一区二区影院| 久久国产精品影院|