《程序設計基礎》是一門介紹C語言基本知識與結構化程序設計方法,,并采用C語言進行結構化程序設計的專業(yè)核心課程,,內容包括C語言的數(shù)據(jù)類型、程序結構,、各種語句,、函數(shù)、預處理,、文件,,結構化程序設計方法,以及相應知識的應用等知識,。
《程序設計基礎》是軟件工程專業(yè)的一門重要基礎課程,,通過學習該課程,學生在結構化程序設計方法,、程序設計語言與程序設計工具軟件的使用等方面受到嚴格,、系統(tǒng)的訓練,初步掌握計算機軟件設計與開發(fā)技術,,為后續(xù)的Java程序設計,、數(shù)據(jù)結構、操作系統(tǒng),、數(shù)據(jù)庫原理及應用,、軟件工程等專業(yè)課程的學習及以后從事軟件開發(fā)工作打下扎實的基礎。《程序設計基礎》課程教學大綱
一,、 課程基本信息
課程代碼: |
| ||
課程名稱: | 程序設計基礎 | ||
英文名稱: | |||
課程類別: | 專業(yè)基礎課 | ||
學 時: | 84 | 實驗學時: | 20 |
學 分: | 4 | ||
適用對象: | 軟件工程專業(yè)本科生 | ||
考核方式: | 考試 | ||
先修課程: |
|
二,、 課程簡介
《程序設計基礎》是一門介紹C語言基本知識與結構化程序設計方法,,并采用C語言進行結構化程序設計的專業(yè)核心課程,內容包括C語言的數(shù)據(jù)類型,、程序結構,、各種語句、函數(shù),、預處理,、文件,結構化程序設計方法,,以及相應知識的應用等知識。
《程序設計基礎》是軟件工程專業(yè)的一門重要基礎課程,,通過學習該課程,,學生在結構化程序設計方法、程序設計語言與程序設計工具軟件的使用等方面受到嚴格,、系統(tǒng)的訓練,,初步掌握計算機軟件設計與開發(fā)技術,為后續(xù)的Java程序設計,、數(shù)據(jù)結構,、操作系統(tǒng)、數(shù)據(jù)庫原理及應用,、軟件工程等專業(yè)課程的學習及以后從事軟件開發(fā)工作打下扎實的基礎,。
三、 教學目標
1,、知識教學目標: |
|
理解和掌握C語言面向過程的設計方法,、數(shù)據(jù)類型、控制語句,、函數(shù)定義與調用,、預處理命令、數(shù)組與指針,、結構體和文件等知識,。 | |
2、能力教學目標: |
|
利用“自頂向下,,逐步求精”的結構化分析方法學對客觀世界的問題求解過程進行簡單的分析,,并能夠使用CodeBlocks(集成gcc編譯工具)等開發(fā)工具進行簡單的面向過程的程序開發(fā)。 | |
3,、素質教學目標: |
|
培養(yǎng)學生團隊合作精神,、交流溝通能力。 |
四,、 教學基本內容及重點與難點
序號 | 章節(jié) | 分類 | 內容 |
1 | C語言概述 | 知識點 | (1) C語言特點,; (2) C語言運行步驟與方法,; (3) JDK 開發(fā)環(huán)境配置; (4) C語言集成開發(fā)環(huán)境的安裝與使用,; (5) 運行第一個C程序,; (6) C語言的命名規(guī)范。 |
重點 | (1) C語言運行步驟與方法,; (2) 運行第一個C程序,; (3) C語言命名規(guī)范。 | ||
難點 | (1) C語言運行步驟與方法,。 | ||
2 | C語言語法基礎 | 知識點 | (1) C程序的基本構成,; (2) C程序注釋方法; (3) 定義變量和聲明常量的方法,; (4) 基本數(shù)據(jù)類型,; (5) 理解各種運算符的含義。 (6) C語言表達式的組成,。 |
重點 | C程序的基本構成,、注釋方法、基本數(shù)據(jù)類型轉換,、表達式,。 | ||
難點 | 基本數(shù)據(jù)類型轉換、關系表達式,。 | ||
3 | 順序結構程序設計 | 知識點 | (1) C語言的語句分類,; (2) 字符數(shù)據(jù)的輸入輸出函數(shù); (3) 格式輸入輸出函數(shù),。 |
重點 | C語言的分類,,格式輸入輸出的基本方式。 | ||
難點 | 格式輸入輸出,。 | ||
4 | 選擇結構程序設計 | 知識點 | (1) 關系運算符和關系表達式,; (2) 邏輯運算符和邏輯表達式; (3) 條件運算符和條件表達式,; (4) if語句與選擇程序結構,; (5) switch語句與多分支程序設計。 |
重點 | 關系表達式,、邏輯表達式,、if語句與選擇程序結構。 | ||
難點 | if嵌套,、多分支程序設計,。 | ||
5 | 循環(huán)結構程序設計 | 知識點 | (1) while語句; (2) do…while語句,; (3) for語句,; (4) continue和break語句,; (5) 循環(huán)結構設計及不同方法比較。 |
重點 | while,、do…while,、for語句實現(xiàn)循環(huán)程序設計。 | ||
難點 | 循環(huán)嵌套,。 | ||
6 | 數(shù)組 | 知識點 | (1) 一維數(shù)組的定義,、引用及初始化; (2) 二維數(shù)組的定義,、引用及初始化,; (3) 字符數(shù)組的定義、引用及初始化,; (4) 字符串函數(shù),。 |
重點 | 數(shù)組的定義與引用。 | ||
難點 | 數(shù)組在程序設計中的應用,。 | ||
7 | 函數(shù) | 知識點 | (1) 函數(shù)的定義、調用及聲明,; (2) 函數(shù)的返回值,; (3) 形式參數(shù)與實際參數(shù); (4) 數(shù)組作為函數(shù)參數(shù),; (5) 嵌套調用與遞歸調用,; (6) 局部變量與全局變量; (7) 變量的存儲類型,; (8) 內部函數(shù)與外部函數(shù),; (9) 預處理命令 。 |
重點 | 函數(shù)的定義與調用,,函數(shù)參數(shù),,數(shù)組作為函數(shù)參數(shù)。 | ||
難點 | 形式參數(shù)與實際參數(shù),,嵌套調用和遞歸調用,。 | ||
8 | 指針 | 知識點 | (1) 地址和指針的概念; (2) 指針變量的定義與使用,; (3) 數(shù)組名與指針變量,; (4) 指向函數(shù)的指針; (5) 指針數(shù)組,; (6) 指向指針的指針,。 |
重點 | 指針變量的定義與使用,數(shù)組,、函數(shù)與指針的聯(lián)合應用,。 | ||
難點 | 指針數(shù)組,,指向指針的指針。 | ||
9 | 結構體,、共用體和枚舉 | 知識點 | (1) 結構體的概念及其定義,; (2) 共用體類型數(shù)據(jù)與枚舉類型數(shù)據(jù)的定義與使用; (3) 結構體的輸入和輸出,; (4) 結構體數(shù)組的定義,、初始化、引用,; (5) 指向結構體變量的指針,; (6) 動態(tài)存儲分配和鏈表的概念。 |
重點 | 結構體類型的定義,、結構的變量的定義與使用,。 | ||
難點 | 鏈表。 | ||
10 | 文件 | 知識點 | (1) 文件的概念,; (2) 文本文件與二進制文件,; (3) 文件結構指針; (4) 文件的打開與關閉,; (5) 文件的讀寫,。 |
重點 | 文件的打開、讀寫與關閉,。 | ||
難點 | 文件的打開,、讀寫與關閉。 |
五,、 學時分配表
序號 | 章節(jié) | 講授 | 實驗 | 備注 |
C語言概述 | 2 |
|
| |
2 | C語言語法基礎 | 6 |
|
|
3 | 順序結構程序設計 | 6 | 2 |
|
4 | 選擇結構程序設計 | 8 | 2 |
|
5 | 循環(huán)結構程序設計 | 8 | 2 |
|
6 | 數(shù)組 | 8 | 4 |
|
7 | 函數(shù) | 8 | 4 |
|
8 | 指針 | 8 | 4 |
|
9 | 結構體,、共用體和枚舉 | 6 | 2 |
|
10 | 文件 | 4 |
|
|
學時總計 | 64 | 20 |
|
六、 選用教材
譚浩強.C程序設計(第四版)[M].北京: 清華大學出版社,2010
七,、 主要參考書目
[1] 明日科技. C語言從入門到精通(第2版) [M]. 北京:清華大學出版社 2012.
[2] (美) 霍頓,,楊浩譯. C語言入門經典(第4版) [M].北京:清華大學出版社2013.
[3] 何欽銘等. C語言程序設計(第2版) [M].北京:高等教育出版社 2012.
[4] 李長云等編著.C語言程序設計[M].北京:國防工業(yè)出版社 2011.
八、 考核方式
1,、考核方式: |
|
本課程的考核方式為期末試卷測試和實踐技能測試,。 | |
2、成績評定: |
|
成績評定采用百分制,。 | |
3,、計分原則: |
|
主要由以下六個部分構成: 第一部分:期末理論考核成績20% 第二部分:平時測試20% 第三部分:研討式學習30% 第四部分:課堂作業(yè)10% 第五部分:實驗成績15% 第六部分:出勤成績5%。 |
九,、 教學改革基本要求
1. 采用案例教學,,增進學生的學習積極性和形成對新概念的認識。
2. 采用問題驅動法,激發(fā)學生的學習主動性和加深對一些概念的理解,。
3. 利用多媒體教學手段,,教師現(xiàn)場編制和演示部分程序。
4. 學生分組完成課程設計任務,,平時分組討論課后問題,。
5. 利用網絡資源進行教學,積極建設網絡資源,,調動廣大學生參與,,提高學生的積極性和創(chuàng)造性。
6. 本課程中程序設計,、函數(shù),、指針、數(shù)組作重點內容講,。
7. 結合本課程的特點,,通過課堂提問和課后作業(yè),培養(yǎng)學生分析問題和解決問題的能力,,達到鞏固知識的目的,。
大綱執(zhí)筆人:《程序設計基礎》教學團隊
大綱審核人:軟件學院教學指導委員會
2012年8月