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