第一篇:c語言程序設計課程教學大綱2012
《C語言程序設計》課程教學大綱
課程編號:
適用專業:機械制造、數控、焊接 專業責任教學單位:機電工程系 總學時:36學時 考核形式:閉卷 筆試 課程類型:專業基礎課 選讀方式:必修課 教學目的:
我們的時代是一個離不開計算機的時代,對于機械制造、數控、焊接專業學生,程序設計是學生必備的技能之一。C語言是一種廣泛使用的結構化程序設計語言,它既具有高級語言的特點,又具有低級語言的特點,它的通用性與靈活性使得它比一般的程序設計語言更加通俗易懂。
本課程從介紹C語言的基礎知識入手,引入“模塊化程序設計”思想,強調實例教學,并結合大量的上機實踐,要求學生在模仿、實踐中逐步學會編寫程序,提高閱讀程序的能力及實際操作能力和技能,為以后更好的理解程序,學習程序,開發軟件打好基礎。
主要教學內容及要求:
第一部分 進入C語言程序世界(2學時)
1、要求:了解C語言的特點,掌握C程序的結構組成,算法的概念及其表示方法,熟悉VC編程環境使用。
2、內容:
1.1 了解C語言程序的結構 1.2 設計簡單的C語言程序 1.3 C程序的調試與運行 1.4 計算機語言的發展
3、重點:C程序的結構、VC編程環境、算法的概念及其表示、編寫最簡單的C程序。難點:編寫簡單的C程序。
第二部分 編制C程序設計的基礎知識(2學時)
1、要求:熟練掌握C語言基本數據類型和表達式,掌握并熟練運用常用的I/O函數。
2、內容: 2.1 常量與變量
2.2 C語言的基本數據類型 2.3 C語言的常用運算符與表達式
3、重點:C語言基本類型、C語言常用表達式。難點:C語言表達式運算符優先級的判斷。第三部分 順序結構程序設計(2學時)
1、要求:了解三種結構程序設計的思想,掌握順序化結構程序設計的方法。
2、內容:
3.1 結構化程序設計的三種基本結構 3.2 數據的輸入與輸出 3.3順序結構程序設計舉例
3、重點:順序結構程序設計,printf與scanf函數的使用。難點:printf與scanf函數的使用。
4、實驗:
實驗
一、輸入/輸出函數編程實訓 實驗
二、順序程序結構設計
第四部分 選擇結構程序設計(2學時)
1、要求:掌握選擇結構程序設計的方法,if語句,switch語句的應用。
2、內容:
4.1 選擇結構程序設計簡介 4.2 if語句的典型應用形式 4.3條件運算符和條件表達式 4.4 switch語句的應用 4.5 選擇結構程序設計應用
3、重點:選擇結構程序設計,if語句與switch語句的應用。難點:if語句與switch語句的使用。
4、實驗:
實驗
三、選擇結構程序設計
第五部分 循環結構程序設計(4學時)
1、要求:掌握循環結構程序設計的思路,while語句、do—while語句和 for語句的使用,循環語句嵌套,break和continue語句。
2、內容:
5.1 為什么使用循環
5.2 while語句與do...while語句 5.3 for語句實現循環 5.4 幾種循環的比較 5.5 多重循環(嵌套循環)5.6 break和continue語句 5.7 循環結構程序設計舉例
3、重點: while語句、do—while語句和 for語句的使用,循環語句嵌套,break語句。難點:循環語句的嵌套。
4、實驗:
實驗
四、循環結構程序設計
第六部分 應用數組設計程序(4學時)
1、要求:掌握數組的定義、引用和初始化,熟練運用數組解決同類型的多個變量問題。
2、內容: 6.1 數組的引入 6.2 一維數組 6.3 二維數組 6.4 字符數組 6.5 數組的應用
3、重點:一維數組、二維數組和字符數組的定義和應用。難點:二維數組、字符數組的應用。
4、實驗:
實驗五、一維數組的使用 實驗
六、字符數組的使用
第七部分 應用函數設計程序(4學時)
1、要求:掌握函數的定義及調用規則,理解實參和形參數據的傳遞方式,熟練運用函數實現模塊化程序設計,理解函數的嵌套調用和遞歸調用,內部函數與外部函數,理解變量的作
用范圍和存儲類別
2、內容: 7.1 函數的引入 7.2 函數的定義與調用 7.3 函數的嵌套調用和遞歸調用 7.4 函數應用實例
7.5 局部變量、全局變量及其存儲 7.6 內部函數和外部函數
3、重點:函數的定義與調用、遞歸和嵌套函數、變量的存儲類別和作用范圍。難點:函數的調用、遞歸函數的使用。
4、實驗:
實驗
七、函數的使用 第八部分 應用指針編制程序
1、要求:了解指針的概念及定義,掌握指針的使用方法,掌握指針和一維數組以及指針和二維數組的應用。掌握幾種特殊類型的指針。
2、內容: 8.1 指針概述 8.2 指針變量 8.3 指針與數組 8.4 指針與函數 8.5 指針數組 8.6 指向指針的指針
3、重點:指針變量的定義和使用、指針與變量、數組、函數指向應用。難點:指針變量作為函數參數、指針指向數組、函數的應用。
4、實驗:
實驗
八、指針的簡單使用 實驗
九、指針的高級使用
第九部分 結構體、共用體和枚舉類型的應用(4學時)
1、要求:理解并掌握結構體的基本概念和用法,掌握共用體和枚舉類型的基本概念及一般使用方法,了解用戶自定義類型。
2、內容:
9.1 結構體類型與結構體變量的定義 9.2 結構體變量的引用 9.3 結構體數組 9.4 結構體與指針 9.5 結構體與函數 9.6 結構體應用—鏈表 9.7 共同體 9.8 枚舉類型
9.9 用typedef定義類型
3、重點:結構體、共用體和枚舉類型的定義、引用和初始化 難點:結構體的概念和使用
4、實驗:
實驗
十、結構體和共用體的應用 第十部分 文件(2學時)
1、要求:理解文件的結構類型、文件指針的相關概念,掌握文件的打開、關閉、讀寫、定位等文件操作
2、內容: 10.1 文件概述 10.2 文件的常用操作 10.3 文件的應用舉例
3、重點:文件的打開與關閉,文件的讀寫 難點:文件類型指針的概念,文件的讀寫
4、實驗:
實驗
十一、文件的使用
第十一部分 C語言程序設計應用實例(4學時)
1、要求:成功完成“實現通訊錄的管理程序”與“貪吃蛇游戲編程實例”訓練。
2、內容:
11.1 實現通訊錄的管理程序 11.2 學生成績管理程序
11.3 圖形與游戲編程實例
3、重點:強化多種C語句、規則的混合使用,理解結構化程序設計的思路。難點:C語句規則的熟練使用,圖形庫函數的使用。本課程與其它課程的聯系與分工:
先修課程:《計算機應用基礎》、《高等數學》、《線性代數》
編寫者簽名:
****年**月**日 系部審核:
教務處批準:
年
月
****年**月**日
日
第二篇:《C語言程序設計》課程教學大綱
《C語言程序設計》課程教學大綱
一、課程教學目的
本課程系統學習C語言的基本知識和基本語法,較好地訓練學生解決問題的邏輯思維能力以及編程思路和技巧,使學生具有較強的利用 C 語言編寫軟件的能力,為培養學生有較強軟件開發能力打下良好基礎。
二、課程教學要求
通過本課程的學習,應熟練掌握 C 語言中的基本知識、各種語句及程序控制結構,熟練掌握 C 語言的函數、數組、指針、結構體、鏈表等數據結構的基本算法;并能熟練地運用 C 語言進行結構化程序設計;具有較強的程序修改調試能力;具備較強的邏輯思維能力和獨立思考能力。
三、課時分配
本學科計劃學時為246學時,其中理論與實訓課時比例為7:3。
四、課程教學重、難點
課程教學重點:掌握C語言變量類型及不同類型常量的表示;標準的輸入輸出函數的使用;運算符及常用數學函數的使用;控制流程、數組和指針的使用;結構體、鏈表的構造使用;函數結構、函數參數傳遞及遞歸等方面的知識;基本的文件操作。難點:指針的使用、結構體鏈表的構造和使用及函數的參數傳遞。
五、課程教學方法(或手段)
本課程實踐性較強,故采用講授和上機操作相結合的方式進行教學。
六、課程教學內容 第一章 C語言概述 1.教學內容
(1)編程歷史的回顧、程序設計介紹(過程式,面向對象,函數式,邏輯式);(2)C語言的歷史背景、特點;(3)C語言源程序的格式和程序結構;(4)C程序的上機步驟。2.重、難點提示
(1)重點:掌握簡單的 C程序格式,包括main()函數、數據說明、函數開始和結束標志等;
(2)難點:編程入門以及對語言的理解。第二章 算法 1.教學內容
(1)算法的概念及特性;評價算法優劣的方法(時間和空間);(2)簡單算法舉例;
(3)算法的表示(自然語言、流程圖、N-S流程圖);(4)結構化程序設計的基本思想及基本步驟。2.重、難點提示
(1)重點: 算法流程圖三種基本結構(以后各章學習中利用流程圖強化對程序的理解);
(2)難點: 算法概念以及對結構化程序設計思想的理解。第三章 數據類型、運算符與表達式 1.教學內容
(1)基本數據類型及其常量的表示法(字符和字符串常量),各種數制(八、十、十六進制)的整型數和長整型數,實型數(float和double);
(2)變量的類型說明、初始化及引用;(3)運算符與表達式: 2.重、難點提示
(1)重點: 掌握 C的幾種基本數據類型,不同類型數據間的混合運算規則;不同運算符的使用特點,清楚每種運算符的優先級與結合性;各種表達式的含義與使用要點。
(1)難點:不同類型數據間的混合運算;運算符的優先級與結合性。第四章 最簡單的 C 程序設計 — 順序程序設計 1.教學內容
(1)C程序結構和語句的構成;
(2)順序結構程序的設計:賦值語句的使用要點;(3)數據的輸入與輸出: 2.重、難點提示
(1)重點: 順序結構程序的表達式語句形式; 輸入/輸出函數的表示與調用方法; 利用流程圖加深對順序結構程序的理解。
(2)難點: 格式輸入與輸出表示中各種格式字符的表示含義。
第五章 選擇結構程序設計 1.教學內容
(1)關系運算符和關系表達式;(2)邏輯運算符和邏輯表達式;
(3)if語句(if;if?else?;if?else if?else?);(4)switch和break語句。2.重、難點提示
(1)重點:關系、邏輯運算符及其表達式的語法形式;掌握if語句;switch語句; 利用流程圖加深對選擇結構程序的理解。
(1)難點: 關系與邏輯運算符表達式的結果判定; if語句嵌套的層次判定;程序中使用break語句運行結果的判定。第六章 循環控制 1.教學內容
(1)用goto語句構成循環、for語句、while語句和do?while語句;(2)循環嵌套;
(3)break,continue語句。2.重、難點提示
(1)重點:掌握while語句與do while語句的結構,for語句的結構,其使用方法;常見的循環嵌套形式;正確區分for語句、do?while語句與while語句;break語句和continue的應用及其區別;
(2)難點:分析總結常用的程序設計方法及算法特點,并能編寫相應的程序。第七章 數組 1.教學內容
⑴ 數組的含義與存儲特點; ⑵ 數組的定義與使用; ⑶ 字符數組。2.重、難點提示
(1)重點:掌握一維數組、二維數組;字符數組與字符串的概念與定義方法,常用的字符串處理函數。
(2)難點:數組下標的起始數問題;利用數組形式進行程序設計的一般方法與典型算法。
第八章 函數 1.教學內容 ⑴ 函數的定義;
⑵ 函數的調用(一般調用、嵌套調用、遞歸調用),return語句; ⑶ 參數的傳遞方式:形式參數與實在參數; ⑷ 局部變量與全局變量; ⑸ 變量的動態存儲與靜態存儲; ⑹ 內部函數與外部函數。2.重、難點提示
(1)重點: 掌握函數定義的一般形式;函數的調用的幾種形式;函數嵌套調用的一般過程;數組名作為函數的參數的一些特點;局部變量與全局變量的概念及它們的使用特點。
(2)難點:不同的函數參數傳遞方法在程序中應用的結果判定;利用函數調用方法實現程序設計中涉及的參數定義、參數傳遞以及返回值問題;函數調用的理解。第九章 預處理命令 1.教學內容
⑴ 預處理的概念與特點; ⑵ 符號常數和宏的定義; ⑶ “文件包含”處理。2.重、難點提示
(1)重點:宏定義的方法;“文件包含”與預處理的應用。(2)難點:宏定義的方法。第十章 指針 1.教學內容
⑴ 指針與地址的概念;
⑵ 指針變量的定義,初始化;指針變量的引用(取地址運算符&及指針運算符*);指針變量作為函數參數的應用;
⑶ 指針與數組(數組的指針和指向數組的指針變量); ⑷ 字符串的指針和指向字符串的指針變量;
⑸ 函數的指針和指向函數的指針變量、返回指針值的指針函數; ⑹ 指針數組和指向指針的指針;
⑺ 對main()函數命令行參數的基本了解。2.重、難點提示
(1)重點:指針變量定義、初始化和引用;數組的指針和指向數組的指針變量;字符串的指針和指向字符串的指針變量;指針數組與指向指針的指針。
(2)難點:指針概念深刻理解;區別指向數組的指針和指針數組;指向指針的指針; 有關指針的數據類型定義和指針的相關運算。第十一章 結構體與共用體 1.教學內容
⑴ 定義結構體類型變量的方法;
⑵ 結構體變量的引用與結構體變量的初始化; ⑶ 結構體數組與指向結構體數據的指針; ⑷ 指向結構體類型數據的指針及用指針處理鏈表; ⑸ 共用體; ⑹ 枚舉類型;
⑺ 用typedef定義類型。2.重、難點提示
(1)重點:掌握結構體類型變量的定義方法;結構體類型變量的引用方法;結構體類型變量如何在定義的同時初始化; 通過圖示正確理解鏈表的概念和形態,共同體的含義、共同體類型變量的定義方法。
(2)難點:結構體與共用體概念的掌握;各種結構體結構的定義。第十二章 位運算 1.教學內容
⑴ 運算符和位運算; ⑵ 位運算舉例; ⑶ 位段。2.重、難點提示
(1)重點:掌握各種位運算符,運算規則和優先級。(2)難點:各種位運算符的運算規則和優先級。第十三章 文件 1.教學內容
⑴ 文件類型指針; ⑵ 文件的打開與關閉; ⑶ 文件的讀寫; ⑷ 文件的定位。2.重、難點提示
(1)重點:掌握文件操作的相關標準函數;(2)難點:文件的讀寫和定位操作。
七、實驗教學內容
實驗項目(一):C 語言中控制語句的使用(1)項目類別:必做(2)項目性質:綜合性(3)項目主要目的要求:
掌握各類控制語句的書寫格式,能在具體問題解決時給出合適的程序控制結構;用分支結構實現程序的條件控制;用循環結構實現程序中重復執行操作的控制。(4)主要儀器:計算機(5)實驗考核方法:隨堂考查 實驗項目(二):C 語言中數組的使用(1)項目類別:必做(2)項目性質:綜合性(3)項目主要目的要求:
掌握數組這種構造類型的特點,如何用數組數據對象并對數據對象進行處理;熟練掌握一維數組的定義、引用、初始化,用一維數組來對字符進行處理;掌握二維數組的定義、引用、初始化,用二維數組實現矩陣的有關方法算法。(4)主要儀器:計算機(5)實驗考核方法:隨堂考查 實驗項目(三):C 語言中函數的使用(1)項目類別:必做(2)項目性質:綜合性(3)項目主要目的要求:
C語言中用函數來實現子功能模塊,掌握系統函數的調用方法及用戶自定義函數的定
義、調用方法;用自定義函數來實現一個具體問題;用自定義函數的嵌套調用來實現一個復雜問題。
(4)主要儀器:計算機(5)實驗考核方法:隨堂考查 實驗項目(四):C 語言中指針的使用(1)項目類別:必做(2)項目性質:綜合性(3)項目主要目的要求:
掌握指針變量的運用,通過指針引用數組元素的方法,函數指針變量作函數的參數;在程序中進行指針變量的運算操作,指針變量作函數的參數;數組元素的指針。(4)主要儀器:計算機(5)實驗考核方法:隨堂考查
實驗項目(五):C 語言中結構體與鏈表的使用(1)項目類別:必做(2)項目性質:綜合性(3)項目主要目的要求:
掌握結構體類型變量的定義和使用;結構體類型數組的概念和應用;鏈表的創建與使用;檢共用體的概念與使用。(4)主要儀器:計算機(5)實驗考核方法:隨堂考查
實驗項目(六):C 語言中文件的使用(1)項目類別:必做(2)項目性質:綜合性(3)項目主要目的要求:
掌握文件以及緩沖文件系統、文件指針的概念;學會使用文件打開、關閉、讀、寫等文件操作函數;學會用緩沖文件系統對文件進行簡單的操作。(4)主要儀器:計算機(5)實驗考核方法:隨堂考查
八、課程考核方式 1.考核方式:
閉卷考試 2.成績構成:
平時+期末
九、選用教材和參考書目
[1]《C程序設計》(第三版),譚浩強編,清華大學出版社,2007。
[2]《數據結構—用C語言描述》(第二版),唐策善編,高等教育出版社,2004。[3]《程序設計基礎與C語言》(第一版),梁力.郭曉玲.高浩編,西安電子科技大學出版社,2001。
[4]《C語言程序設計》(第二版)劉德恒編,電子工業出版社,2001。
第三篇:C語言程序設計課程教學大綱
C語言程序設計課程教學大綱
中央電大教務處教學管理科 2007年08月29日
第一部分 大綱說明
1.課程性質、任務與目的
《C語言程序設計》是中央電大計算機科學與技術專業(專科起點本科)的一門專業基礎課。主要任務是介紹C語言中的數據類型、數據表示、運算規則、語句定義、函數調用、程序結構、文件使用、編程方法等內容。目的是使學生能夠利用一種計算機程序設計語言編寫出解決較簡單的數值計算和數據處理問題的程序,為學習后續課程奠定程序設計和算法設計的基礎。
2.與其他課程的關系
學習《C語言程序設計》課程需要了解計算機基本組成,并具有對計算機進行基本操作的技能。本課程的后續課程為《數據結構》、《操作系統》、《數據庫》等。
3.課程教學特點
《C語言程序設計》是一門知識性和實踐性都很強的課程,必須在學習中掌握C語言的語法規則,并在上機實踐中體會和加深理解,通過實際的上機操作訓練,還能夠學習到書本上學不到的知識和技能,提高自己進行程序設計和開發的實際能力。
4.教學主要內容
(1)介紹C語言上機操作環境、程序基本結構,系統函數的使用;
(2)介紹常用輸入輸出函數的作用;
(3)介紹C語言基本數據類型、常量、變量、運算符、數學函數、表達式等的表示與含義;
(4)介紹各種分支語句、循環語句的流程控制功能及相應的程序設計方法;
(5)介紹一維數組和二維數組的定義與作用,字符串數組的特殊存儲格式與作用;
(6)介紹指針的定義和運算,變量存儲空間的動態分配,數組名的指針含義;
(7)介紹用戶函數的定義與調用,值參數和指針參數的使用,變量的作用域,遞歸函數;
(8)介紹結構和聯合類型的定義與應用,結構鏈表的建立和使用;
(9)介紹文件的概念,文件的打開和關閉,字符文件和字節文件的處理操作。
(10)介紹利用C語言編寫解決實際問題的程序設計思路和方法。
5.教學基本要求
本課程教學內容包括了解、理解和應用三個層次,并且逐步遞進,具體含義如下:
(1)了解層次:記憶C語言中的基本概念和語法規則;
(2)理解層次:掌握C語言中的每個語法成分和語句的定義格式、含義及作用;
(3)應用層次:利用C語言,結合實際解決問題的需要,能夠分析和編寫程序。
第二部分 媒體使用和教學過程建議
1.課程學分和學時
本課程為4學分、72學時、第一學期開設。電視、實驗和面授輔導學時各為20、27和25學時。課程中各章內容及學時分配如下表所示。
序號 一 二 三 四 五 六 七 C語言概述 數據類型與表達式 流程控制語句 數組和字符串 指針 函數 結構與聯合
內容
電視學時 實驗學時 面授學時 3 3 2 2 3 3 2 4 4 4 4 4 3 3 3 3 4 3 八
文件 2 3 4
2.教學媒體設計
(1)課程以文字教材為主,文字教材采用合一型。文字教材擔負起形成整個課程體系系統性和完整性的任務,是學生學習的主要媒體形式。因此教材要概念準確、條理清晰、深入淺出、便于自學,并且要包含實驗指導和實驗內容。
(2)電視課程作為文字教材的強化媒體,配合文字教材講授課程的基本知識以及重點和難點。
(3)面授輔導課程由面授教師系統地輔導教學內容,保證教學進度,檢查學習效果,隨時解答學生的問題,是非常重要的教學活動。
(4)CAI課件是利用計算機進行自主學習的重要教學手段,它能夠集名師講授、動畫教學演示、作業練習、學習效果檢查等為一體,不受時間、地點和空間的限制,深受學習者喜愛。
(5)網絡資源媒體可以匯集有關教學文件為學生查詢提供方便,還可以進行網絡交流答疑活動,便于師生定期或隨時開展。
3.教學過程建議
本課程的電視和面授課堂教學要把知識講授與上機操作演示結合起來,同時要加強學生的上機操作練習和指導,使所學知識都能夠得到上機運行結果的充分驗證。
第三部分 教學內容和教學要求
第一章 C語言概述
(一)教學內容
1.C語言的特點
2.C語言中的基本語法成分和程序結構
3.常用輸入輸出函數printf和scanf的作用
4.C程序的編輯、編譯、鏈接和運行
(二)教學要求
了解:C語言的特點,基本的語法成分,程序的結構,C程序的編輯、編譯、鏈接和運行的過程。
理解:常用輸入輸出函數printf和scanf的作用
第二章 基本數據類型與表達式
(一)教學內容
1C語言中的基本數據類型;
2.整數、實數、字符、枚舉等常量的表示;
3.使用#define編譯預處理命令定義符號常量;
4.變量的定義和分類;
5.各種運算符的表示和應用;
6.數值、關系、邏輯表達式的求值;
7.常用數值函數的調用,如絕對值函數、平方根函數、指數函數、對數函數、取整函數等的調用。
(二)教學要求
理解:C語言中的基本數據類型種常量和變量的表示,運算符的優先級和結合性,表達式的構成,常用數學函數的調用格式與作用。
第三章 流程控制語句
(一)教學內容
1.if語句的定義格式和作用;
2.switch語句的定義格式和作用;
3.for語句的定義格式和作用;
4.while語句的定義格式和作用;
5.do---while語句的定義格式和作用;
6.continue和break語句的定義格式和作用;
7.return和goto語句的定義格式和作用。
(二)教學要求
理解:各種語句的定義格式;
應用:分析程序,按照解決問題的需要編寫出相應程序。
第四章 數組和字符串
(一)教學內容
1.數組和數組元素的有關概念;
2.一維數組的定義和應用;
3.二維數組的定義和應用;
4.字符串的存儲和字符與字符串函數的使用。
(二)教學要求
了解:數組和數組元素的有關概念;
理解:一維數組和二維數組的定義格式,字符串的存儲格式,字符與字符串函數的調用格式;
應用:會分析含有數組和字符串應用的程序,根據數值計算和數據處理問題編寫出數組應用程序。
第五章 指針
(一)教學內容
1.指針的有關概念;
2.指針的各種運算
3.數組元素的指針訪問方式
4.數據存儲空間的動態存儲分配
(二)教學要求
了解:指針的有關概念;
理解:指針的各種運算符的含義,一維和二維元素的指針訪問方式,動態存儲分配與釋放函數的含義;
應用:會分析含有指針操作的程序。
第六章 函數
(一)教學內容
1.函數的定義格式和各個語法成分的作用;
2.函數的調用格式以及調用過程;
3.值參數和指針參數的不同作用;
4.變量的作用域分類;
5.遞歸函數的概念和調用過程。
(二)教學要求
了解:函數的定義、聲明、調用與返回的有關概念;
理解:函數的定義和調用過程,值參數和指針參數的使用,變量的各種不同作用域;
應用:會分析一個函數定義的功能,根據問題編寫出對應的函數。
第七章 結構與聯合(一)教學內容
1.結構的基本概念
2.結構的定義與初始化
3.結構成員的訪問和結構變量的賦值
4.結構與數組
5.結構與函數
6.結構與鏈表
7.聯合的定義與使用
(二)教學要求
了解:結構和聯合的有關概念;
理解:結構和聯合的定義格式,結構和聯合成員的訪問,結構作為函數參數的應用,結構作為鏈表中結點類型的應用;
應用:會分析和編寫使用結構的函數或程序
第八章 文件
(一)教學內容
1.數據文件的概念
2.文件的打開和關閉,3.文件的操作方式
4.字符文件的訪問
5.字節文件的訪問
(二)教學要求
了解:文件的有關概念;
理解:文件的各種訪問方式;
應用:會分析和編寫使用文件的程序。
第四部分 實驗
實驗是學習該課程的非常重要的教學環節,通過上機實驗能夠加深理解和鞏固書本上所學的知識,能夠提高動手操作的能力以及分析問題和解決問題的能力。在教材中的每章都將給出具體的實驗練習題,以及必要的操作步驟。
第四篇:《C語言程序設計(實踐)》課程教學大綱.
《C語言程序設計(實踐)》課程教學大綱
一、課程的性質和任務
課程性質:《C語言程序設計(實踐)》是多媒體技術專業《C后續課程設計課程。
本課程的任務是:通過課程設計,為學生提供一個既動手又動腦,獨立實踐的機會,將課本上的理論知識和實際有機的結合起來,鍛煉學生的分析解決實際問題的能力。提高學生實際編程的能力。
本課程教學應達到的基本要求是:利用學到的編程知識和編程技巧,通過布置具有一定難度的程序設計題目,幫助學生熟悉程序的設計、編寫與調試過程。
語言程序設計》課程的二、時間安排
本課程設計時間為一周(28學時),題目提前兩周布置,使學生作好準備。具體時間安排如下:
1.分析設計準備階段(周一)
2.編程調試階段(周二至周四)
3.總結報告和書寫說明書階段(周三至周四)4.考核階段(周五)
三、課題內容:
提供以下備選課題: 1.圖書管理信息系統 2.民航訂票系統 3.標準化考試系統 4.時鐘
四、組織管理: 對學生分組,每組3~6人,每組選一課題。
五、考核評估:
成績分優、良、中、及格和不及格五等,從以下幾方面考核: 1.程序設計的可用性,實用性,通用性,可擴充性(40%)2.學生的動手能力,創新精神(30%)3.總結報告(10%)4.答辯水平(20%)
主編:姚培華
主審:王富榮
第五篇:《C語言程序設計》課程教學大綱2011
【C語言程序設計】課程教學大綱
【課程代碼】
0770105
【學
分】【參考學時】
【講授學時】
【實驗學時】
【實習學時】
0 【課程性質】
專業必修課
【參考教材】1.譚浩強 《C程序設計》(第三版)清華大學出版社
2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)
3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社
【課程基礎】
在學這門課之前,學生最好對計算機基本結構、軟硬件概念和上機操作知識有一定的了解,但不是必須的。本課程和“計算機導論”課程同時開設,可以互學互用。【適應對象】
本課程適用于計算機科學與技術-計算機科學與技術專業、軟件工程-軟件工程專業、電子信息科學類-電子信息科學與技術專業以及數學專業的學生學習。【教學目的】
通過對C語言的語法規則、數據類型、數據運算、語句、系統函數、程序結構的學習,使學生了解結構化程序設計基本思想和方法,并養成良好的編程風格,培養出扎實的軟件開發基本技能;使學生初步掌握利用計算機處理問題的思維方式和程序設計的基本方法和編程技巧,熟練地應用C語言編寫簡單的程序,掌握基本的程序調試方法和步驟,為進一步學習后續課程和將來從事應用軟件開發奠定良好的基礎。【內容提要】
C語言的各種數據類型,運算符,表達式;結構化程序設計語句;數組;函數的概念和用法;編譯預處理命令;指針運算及其使用;位運算;文件的操作;算法的基本表示方法及結構化程序設計方法。
第1章 C語言概述
第一節C語言出現的歷史背景 第二節C語言的特點
C語言的特點 第三節 簡單的C程序介紹
簡單C程序的結構 第四節C程序的上機步驟 【基本要求】
了解C語言的歷史; 掌握C語言的特點;
掌握C語言的運行環境,初步了解運行一個C語言程序的過程。【參考學時】2學時
【參考資料】[ 1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社 ]
第2章 程序的靈魂-算法
第一節 算法的概念
算法的定義。
第二節 簡單算法舉例
第三節 算法的特性
算法的特點。
第四節 怎樣表示一個算法
用自然語言表示算法;用流程圖表示算法;三種基本結構; N-S圖;用偽代碼表示算法;用計算機語言表示算法。第五節 結構化程序設計方法 【基本要求】
1、掌握算法的概念,算法的特性;
2、掌握結構化程序設計的三種基本結構;
3、掌握用流程圖、N_S流程圖和偽代碼等算法描述方法來描述具體的算法的方法以及結構化程序設計的方法。重點:結構化程序的三種基本結構,順序,選擇,循環;結構化程序設計的方法,自頂向下,逐步細化,模塊化設計,結構化編碼。難點:用流程圖、N_S流程圖和偽代碼算法描述方法來描述具體的算法。【參考學時】4學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社] 第3章 數據類型、運算符與表達式
第一節 C的數據類型
第二節 常量和變量
常量和符號常量;變量的定義和使用。
第三節 整型數據
整型常量的表示方法;整型常量;整型常量的類型。第四節 實型數據
實型常量的表示方法;實型常量;實型常量的類型。第五節 字符型數據
字符常量;字符變量;字符數據在內存中的存儲形式及其使用方法;字符串常量。第六節 變量賦初值 變量賦初值的方法。
第七節 各類數值型數據間的混合運算
運算規則和實例。
第八節 算術運算符和算術表達式
算術運算符;算術表達式。
第九節 賦值運算符和賦值表達式
賦值運算符;賦值表達式。第十節 逗號運算符和逗號表達式
逗號運算符;逗號表達式。【基本要求】
1、掌握C語言所提供的數據類型以及基本數據類型常量的書寫方法和變量的定義、賦值和初始化方法;
2、掌握基本運算符的運算規則及優先級別;
3、了解C語言的數據類型體系和運算符體系;
4、能正確構成有基本數據類型組成的基本類型的表達式。
重點:基本數據類型常量的書寫方法和變量的定義、賦值、初始化、使用方法;基本運算符的運算規則及優先級別;表達式的構成規則和計算。難點:運算符的優先級別;混合表達式計算;邏輯值的表示方法。【參考學時】4學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社] 第4章 最簡單的C程序設計-順序程序設計
第一節 C語句概述
C語言中的語句類型。第二節 賦值語句
賦值語句的用法。
第三節 數據輸入輸出的概念及在C語言中的實現
輸入、輸出概念;輸入/輸出實現方式。第四節 字符數據的輸入輸出
putchar函數的使用;getchar函數的使用。第五節 格式輸入與輸出
printf函數的使用;scanf函數的使用。第六節 順序結構設計程序舉例 【基本要求】
1、了解C語言所包含的語句;
2、熟練掌握賦值語句以及字符輸入輸出、格式輸入輸出函數的使用方法;
3、學會按照一定的格式輸出相應的數據類型,能正確設計順序結構的程序。重點:賦值語句的格式和功能;字符和格式輸入/輸出函數的調用格式和功能。難點:格式輸入/輸出函數中格式控制字符的使用。【參考學時】4學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第5章 選擇結構程序設計
第一節 關系運算符和關系表達式
關系運算符及其優先次序;關系表達式。第二節 邏輯運算符和邏輯表達式
邏輯運算符及其優先次序;邏輯表達式。第三節 if語句
if語句的三種形式;if語句的嵌套;條件運算符。第四節 switch語句
swtich語句的用法。第五節 程序舉例 【基本要求】
1、掌握關系運算符、邏輯運算符的運算規則以及關系表達式和邏輯表達式的使用;
2、掌握條件運算符、條件表達式的使用;
3、熟練掌握條件選擇語句if語句的使用;
4、熟練掌握多分支語句switch語句的使用。
重點:關系運算符、邏輯運算符、條件運算符的使用,混合運算時的優先級別; if語句的語法格式;if語句的嵌套;使用switch語句實現多分支結構的程序設計方法。
難點:運算符混合運算的優先級別;if語句的嵌套;switch語句的使用。【參考學時】4學時
【參考資料】[1.譚浩強《C程序設計》(第三版)清華大學出版社2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第6章 循環控制
第一節 概述
C語言中實現循環的語句類型。第二節 goto以及用goto語句構成循環
goto語句的用法。第三節 while語句
while語句的用法。第四節 do-while語句
do-while語句的用法。第五節 for語句
for語句的用法。第六節 循環的嵌套
循環嵌套的種類;嵌套語法。第七節 幾種循環的比較
第八節 break語句和continue語句
break語句;continue語句。第九節 程序舉例 【基本要求】
1、熟練掌握循環結構的控制語句:while語句、do_while語句、for 語句的用法;
2、掌握三種循環控制語句的區別和聯系;
3、掌握break、continue、goto語句的功能和語法格式;
4、能夠根據循環結構的要求正確選取循環語句來實現循環,掌握循環程序的執行過程。
重點:三種循環語句while、do_while、for的使用;break、continue、goto語句的使用;循環程序的執行過程;嵌套的循環程序。
難點:循環程序的執行過程;嵌套的循環程序。【參考學時】4學時
【參考資料】[譚浩強 《C程序設計》(第三版)清華大學出版社2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第7章 數組
第一節 一維數組的定義和使用
一維數組的定義;一維數組元素的引用;一維數組的初始化;一維數組程序舉例。第二節 二維數組的定義和使用
二維數組的定義;二維數組的引用;二維數組的初始化;二維數組程序舉例。第三節 字符數組
字符數組的定義;字符數組的初始化;字符數組的引用;字符串和字符串結束標志;字符數組的輸入輸出;字符串處理函數;字符數組的應用。【基本要求】
1、掌握數組的概念、一維數組、二維數組和多維數組的定義和使用;
2、掌握字符數組、字符串的區別和具體應用;
3、掌握處理字符串的系統函數的使用方法。
重點:一維數組、二維數組和多維數組的定義和使用;字符串的處理函數的使用。難點:字符數組、字符串的區別,存放若干字符和存放字符串的字符類型數組的差別。【參考學時】6學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第8章 函數
第一節 概述
函數的作用及分類。第二節 函數定義的一般形式
無參函數的定義形式;有參函數定義的一般形式;空函數;形參聲明的方式。第三節 函數參數和函數的值
形式參數;實際參數;函數的返回值。第四節 函數的調用
函數調用的一般形式;函數調用的方式;對被調函數的聲明;函數原型。第五節 函數的嵌套調用
函數嵌套調用的含義及其方式。第六節 函數的遞歸調用
遞歸;函數遞歸調用的方式。第七節 數組作為函數參數
數組元素作為函數實參;數組名作為函數參數;多維數組名作為函數參數。第八節 局部變量和全局變量
局部變量;全局變量;局部變量和全局變量的使用。第九節 變量的存儲類別
動態存儲方式和靜態存儲方式;auto變量;用static聲明局部變量;register變量;用extern聲明外部變量;用static聲明外部變量;變量的聲明和定義的區別。第十節 內部函數和外部函數
內部函數;外部函數。
第十一節 如何運行一個多文件的程序
在Turbo C集成環境下編譯連接多文件結構的方法。【基本要求】
1、熟練掌握函數的結構、設計方法和調用方法;
2、掌握函數調用中數據傳遞的兩種方式——值傳遞和地址傳遞的區別;
3、掌握C程序中變量的存儲類型以及使用;
4、掌握嵌套調用函數、遞歸函數的使用并能正確使用各種常用的系統函數。
重點:函數的定義和調用方法;調用函數時數據傳遞方法;常用系統函數的使用。難點:值傳遞和地址傳遞的區別;編寫遞歸函數。【參考學時】8學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第9章 預處理命令
第一節 宏定義
不帶參數的宏定義;帶參數的宏定義。第二節 “文件包含”處理
“文件包含”命令及其使用。第三節 條件編譯
條件編譯命令及其使用。【基本要求】
1、掌握宏定義和宏替換的一般方法;
2、掌握文件包含的處理方法;
3、了解條件編譯的作用和實現方法。
重點:無參數的宏定義和宏替換;帶參數的宏定義和宏替換;文件包含處理。難點:帶參數的宏定義和宏替換。【參考學時】1學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第10章 指針
第一節 指針和地址的概念
內存地址及其訪問方式;指針。第二節 變量的指針和指向變量的指針變量
變量的指針;指針變量的定義;指針變量的引用;指針變量作為函數參數。第三節 數組和指針
指向數組元素的指針;通過指針引用數組元素的方法;數組名指針變量作為函數參數的用法;指向多維數組的指針和指針變量。第四節 字符串和指針
字符串的表示形式;字符串指針作為函數參數;使用字符指針變量與使用字符數組的區別。
第五節 函數的指針和指向函數的指針變量
用函數指針變量調用函數;用指向函數的指針作為函數參數。第六節 返回指針值的函數
返回指針的函數的定義及其使用。第七節 指針數組和指向指針的指針
指針數組的概念;指向指針的指針;指針數組作main函數的形參。第八節 有關指針的數據類型和指針運算的小結
指針數據類型;指針運算;void指針類型。【基本要求】
1、掌握地址和指針的概念及二者之間的關系;
2、熟練掌握定義指針變量和訪問該變量的方法;
3、掌握指針變量的各種使用方法。
重點:指針變量的定義、初始化和賦值方法;利用指向變量、數組、字符串的指針變量來正確引用變量、數組、字符串;指針變量作為函數參數的情況;
難點:指針變量作為函數參數的情況;指向多維數組的指針變量和多維數組的地址。【參考學時】9學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第11章 結構體與共用體
第一節 概述
結構體類型的作用;結構體類型的定義。第二節 定義結構體變量的方法
定義結構體變量的三種方法。第三節 結構體變量的引用
結構體變量的引用原則。第四節 結構體變量的初始化
結構體變量的初始化方法。第五節 結構體數組
結構體數組的定義;結構體數組的初始化;結構體數組的應用。第六節 指向結構體類型數據的指針
指向結構體變量的指針;指向結構體數組的指針;用結構體變量和指向結構體的指針作為函數參數。
第七節 用指針處理鏈表
鏈表的概念;鏈表的結構;處理動態鏈表的函數;動態鏈表的建立;鏈表的輸出;鏈表的刪除操作;鏈表的插入操作;鏈表的應用。第八節 共用體
共用體的概念;共用體變量的引用方式;共用體類型數據的特點。第九節 枚舉類型
枚舉的概念;枚舉型數據的定義和使用。第十節 用typedef定義類型
typedef定義類型的方式。【基本要求】
1、熟練掌握結構體構造數據類型的定義、初始化和使用;
2、掌握鏈表處理的過程以及共用體數據類型的定義和使用;
3、了解枚舉類型的定義和使用和typedef自己定義類型的方法。
重點:結構體、共用體、枚舉類型的特點和使用;結構體型變量、數組、指針變量的定義、初始化和成員引用方法;鏈表的建立,插入和刪除等操作。
難點:嵌套的結構類型數據的處理;鏈表處理。【參考學時】8學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第12章 位運算
第一節 位運算和位運算符
“按位與”運算符;“按位或”運算符;“異或”運算符;“取反”運算符;左移運算符;右移運算符;為運算賦值運算符。第二節 位運算舉例 第三節 位段
位段的概念;位段的使用。【基本要求】
掌握位運算符和位運算的基本操作。
重點:位運算符的功能;位段的概念及使用。難點:位段的使用。【參考學時】2學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]
第13章 文件 第一節 C文件概述
文件的概念;文件的類型和處理方式。第二節 文件類型指針
文件指針的定義方法。第三節 文件的打開與關閉
文件的打開;文件的關閉。第四節 文件的讀寫
fputc函數及其使用;fgetc函數及其使用;fread函數和fwrite函數及其使用;fprintf函數和fscanf函數及其使用;其他讀寫函數。第五節 文件的定位
rewind函數;fseek函數和隨機讀寫;ftell函數。第六節 出錯的檢測
ferror函數;clearerr函數。第七節 文件輸入輸出小結
【基本要求】
1、要求掌握緩沖文件系統中有關文件操作的系統函數的使用方法;
2、掌握設計并編寫對文件進行處理的實用程序。
重點:緩沖文件系統中“文件型”指針的概念;有關文件操作的系統函數的使用。難點:文件處理系統函數的使用,掌握各個函數中參數的功能和區別。【參考學時】4學時
【參考資料】[1.譚浩強 《C程序設計》(第三版)清華大學出版社 2.譚浩強、張基溫、唐永炎《C語言程序設計教程》高等教育出版社(第二版)3.譚浩強 《C程序設計習題及上機指導》 清華大學出版社]