本課程遵循以 CDIO教育理念為導向,以項目為載體,以培養學生計算思維為目標,讓學生“做中學”的工程教育理念。在整個教學過程中,始終以“適應軟件產業的發展需要,培養學生計算思維”為教學目標,緊緊抓住“程序設計”這條主線,以學生為主體,以教師為主導,開展教學活動。
《程序設計基礎(I)》課程大綱
課程編碼:
學 分:2
總 學 時:32
課堂教學學時:32
實驗(上機)學時:0
適用專業:計算機科學與技術、數字媒體技術
先修課程:無
一、課程的性質、目的與任務:
本課程是一門計算機學科基礎課程。
通過本課程的教學,使學生比較熟練地掌握程序設計語言的基本組成元素,具有扎實的軟件開發基本方法和技能,并養成良好的編程風格,為進一步學習后續課程和將來從事信息技術軟件開發奠定良好的基礎。
本課程旨在培養學生解決問題(算法與程序設計)的能力。
二、教學進程安排:
序號 | 章節名稱 | 課內教學安排 | 課外學習安排 |
| ||
課堂教學學時 | 實驗(上機)學時 | 總學時 | 課外學習時數 | 檢查評價方式 | ||
1 | 第一章 | 2 | 1 | 4 | 4 | 作業、小測 |
2 | 第二章 | 2 | 0 | 2 | 2 | 作業、小測 |
3 | 第三章 | 4 | 2 | 6 | 6 | 作業、小測 |
4 | 第四章 | 4 | 4 | 8 | 8 | 作業、小測 及上機答辯 |
5 | 第五章 | 14 | 4 | 18 | 18 | 小組匯報作業、小測 及上機答辯 |
6 | 第六章 | 6 | 4 | 9 | 9 | 小組匯報作 業、小測 及上機答辯 |
注:純理論教學,實驗(上機)學時標注為0。
三、教學內容與要求:
第一章 緒論
1.教學目標: 通過本章的學習,使學生了解程序設計語言的歷史,掌握程序和算法的相關概念。
2.教學重點和難點:程序及算法的相關概念
3.教學內容和要求:
內容:
(1)程序設計語言的歷史
(2)程序設計語言范型概述(過程式語言、面向對象語言、函數語言、說明性及非算法式語言、腳本式語言 )
(3)程序的基本構成
(4)程序風格
(5)程序的上機過程
(6)問題求解策略;
(7)問題求解過程中算法的角色
(8)算法實現策略
(9)算法的概念和特性
要求:
(1) 概述幾種程序設計語言,說明它們對語言發展史的重要影響;
(2) 指出本單元講述的程序設計語言范型的至少一個特征;
(3) 概述程序的基本構成
(4) 概述程序的風格,說明程序風格對程序的影響。
(5) 概述程序的上機過程
(6) 了解算法在問題求解中的重要性;
(7) 了解一個好算法的必要特性;
(8) 了解表示算法的工具;
(9)讓學生會利用自然語言書寫算法;
4.教學過程與方法:
教學過程:
(1)講解程序設計語言的歷史
(2)講解程序設計語言范型概述(過程式語言、面向對象語言、函數語言、說明性及非算法式語言、腳本式語言)
(3)講解程序的基本構成
(4)講解程序風格
(5)講解程序的上機過程
(6)講解問題求解策略;
(7)講解問題求解過程中算法的角色
(8)講解算法實現策略
(9)講解算法的概念和特性
方法:傳統與多媒體教學相結合
5.課外閱讀資料:具體寫明名稱、出處和閱讀要求。
《程序設計基礎:從問題到程序》 胡明,王紅梅 第一章未講的內容。
6.作業:要求,提交的形式和時間。
(1)、將書上的“helloword”程序上機驗證,以熟悉本門課的開發環境,并于一周后提交實驗報告的電子文檔和打印稿。
第二章 數據的存儲和組織
1.教學目標: 通過本章的學習,使學生了解數據的存儲和組織,掌握程序設計語言的基本數據類型。
2.教學重點和難點:數據的組織和基本數據類型
3.教學內容和要求:
內容:
(1) 數據的存儲介質——存儲器 ;
(2) 數據的組織
(3) 基本數據類型
要求:
(1) 概述數據的存儲介質——存儲器 ;
(2) 概述數據的組織
(3) 概述基本數據類型
4.教學過程與方法:
教學過程:
(1) 講解數據的存儲介質——存儲器 ;
(2) 講解數據的組織
(3) 講解基本數據類型
方法:傳統與多媒體教學相結合
5.課外閱讀資料:具體寫明名稱、出處和閱讀要求。
《程序設計基礎:從問題到程序》 胡明,王紅梅 第二章相關的內容。
6.作業:要求,提交的形式和時間。
(1)、將十進制數換算成二進制數,二進制數轉換成八進制和十六進制數,并于一周后提交紙質文檔。
第三章 數據的基本表現形式
1.教學目標:讓學生掌握常量和變量的概念,并學會利用常量和變量來解決實際問題。
2.教學重點和難點:高級語言中常量和變量的定義;
3.教學內容和要求:
內容:
(1)常量及高級語言的常量定義
(2)變量及高級語言的變量定義
要求:
(1) 利用常量和變量編制簡單的程序;
(2) 設計、實現、測試和查錯;
4.教學過程與方法:
教學過程:
(1)講解常量及高級語言的常量定義。
(2)講解變量及高級語言的變量定義
方法:傳統與多媒體教學相結合、項目驅動
5.課外閱讀資料:具體寫明名稱、出處和閱讀要求。
《程序設計基礎:從問題到程序》 胡明,王紅梅 第三章相關的內容。
6.作業:要求,提交的形式和時間。
(1)利用常量和變量編寫程序,并于一周后提交實驗報告的電子文檔和打印稿。
第四章 數據的基本處理
1.教學目標:讓學生掌握高級語言中表達式、輸入、輸出語句。
2.教學重點和難點:表達式、輸入和輸出
3.教學內容和要求:
內容:
(1)輸出
(2)輸入
(3)表達式
要求:
(1) 修改和擴充簡單程序;
(2) 設計、實現、測試和查錯;
4.教學過程與方法:
教學過程:
(1)講解輸出
(2)講解輸入
(3)講解表達式
方法:傳統與多媒體教學相結合,項目驅動
5.課外閱讀資料:具體寫明名稱、出處和閱讀要求。
《程序設計基礎:從問題到程序》 胡明,王紅梅 第四章相關的內容。
6.作業:要求,提交的形式和時間。
(1)利用輸出語句擴充你的程序,使其能將變量的值輸出到屏幕上,并上機調試,于一周后提交實驗報告的電子文檔和打印稿。
(2)利用輸入語句修改作業(1)中的程序,使其能將用戶的輸入顯示到屏幕上,并上機調試,于一周后提交實驗報告的電子文檔和打印稿。
(3)編寫一個能對用戶的輸入進行處理,并能將處理結果顯示到屏幕上,并上機調試,于一周后提交實驗報告的電子文檔和打印稿。
第五章 程序的基本控制結構
1.教學目標: 讓學生掌握程序的三種基本控制結構及高級語言中實現這三種基本控制結構的語句。
2.教學重點和難點:選擇結構和循環結構
3.教學內容和要求:
內容:
(1)順序結構
(2)選擇結構
(3)循環結構
要求:
(1)按給定的程序設計任務,選擇相應的控制結構;
(2) 設計、實現、測試和查錯;
4.教學過程與方法:
教學過程:
(1)講解順序結構
(2)講解選擇結構
(3)講解循環結構
方法:傳統與多媒體教學相結合
5.課外閱讀資料:具體寫明名稱、出處和閱讀要求。
《程序設計基礎:從問題到程序》 胡明,王紅梅 第五章相關的內容。
6.作業:要求,提交的形式和時間。
(1)編寫一個計算器,并于三周后提交程序源代碼和實驗報告電子文檔及紙質檔。
第六章 基本數據結構
1.教學目標:讓學生能利用高級語言中的數組編寫程序。
2.教學重點和難點:數組應用
3.教學內容和要求:
內容:
(1)數組
要求:
(1) 了解基本數據和復合數據的表示和用法;
(2) 掌握各種數據結構的常見應用;
(3) 掌握高級語言實現用戶定義數據結構的方法;
(4) 了解數據結構實現方法的差異;
(5) 能用數組編寫程序;
4.教學過程與方法:
教學過程:
(1)講解數組
方法:傳統與多媒體教學相結合,項目驅動。
5.課外閱讀資料:具體寫明名稱、出處和閱讀要求。
《程序設計基礎:從問題到程序》 胡明,王紅梅 第六章相關的內容。
6.作業:要求,提交的形式和時間。
(1)編寫一個小應用程序,并于學期結束提交程序源代碼和實驗報告電子文檔及紙質檔。
四、學習過程記錄和考核要求
考勤占10%,缺一次扣1分,直到扣完為止,曠課達三分之一者,不能參加考試
作業占10%,缺一次扣1分,每次作業的分數為=總作業次數/10*作業等級(優+:1,優:0.9,良:0.8,中:0.7,及格:0.6,不及格:0.5)
小測占10%,每次小測的分數為=(總的小測次數/10)*(小測分數/100)
半期考試20%,半期考試分數為=半期考試成績*20%
1. 明確寫出期末考核方式、學期成績的評定方式。
期末考核方式:閉卷考核
學期成績的評定方式:平時成績50%,期末考試占50%。
2. 明確規定課外學習需要納入考核范圍的內容。
《程序設計基礎:從問題到程序》胡明,王紅梅 ,第1-6章。
加分原則:參與校級及以上單位組織與該課程相關的學科競賽、專業技能比賽、職業技能比賽、學生科技創新課題等,取得相關獲獎證書或結題證明的,經認定可根據獲獎等級加分,加分原則如下:
(1)國家級一等獎以上,在總評成績上加30分
(2)國家級二等獎,在總評成績上加25分
(3)國家級三等獎,在總評成績上加20分
(4)國家級三等獎以下,在總評成績上加15分
(5)省級一等獎以上,在總評成績上加15分
(6)省級二等獎,在總評成績上加13分
(7)省級三等獎,在總評成績上加11分
(8)省級三等獎以下,在總評成績上加8分
(9)校級一等獎以上,在總評成績上加7分
(10)校級二等獎,在總評成績上加6分
(11)校級三等獎及以下,在總評成績上加5分
(12)參加比賽,在總評成績上加4分
(13)國家級課題,在總評成績上加30分,省級課題,在總評成績上加15分,校級課題,在總評成績上加7分,申報課題加4分。
(14)如多次獲獎,不累加,以最高獎項加分。
五、主要參考書:
1.胡明,王紅梅、《程序設計基礎:從問題到程序》、清華大學出版社、2011年
2. 吳文虎(著)、《程序設計基礎》、第2版、清華大學出版社、2003年
3. 譚浩強、《C語言程序設計》、清華大學出版社、2001年
4. 譚浩強、孟憲福 李盤林、《C語言程序設計教程》、電子工業出版、2003年
5. (美)P.J.Deitel ,H.M.Deite,蘇小紅,李東,王甜甜(譯)、《C大學教程(第六版)》、電子工業出版社、2012年
6.(美)Brian W.Kernighan,Dennis M.Ritchie,ClovisL.Tondo,Scott E.Gimpel,徐寶文,李志,楊濤(譯)、《C程序設計語言》、第2版、機械工業出版社、2013年