第一篇:C語言程序設計教學大綱72du
《C語言程序設計》教學大綱
課程名稱:中文名稱 :C語言程序設計;英文名稱:C Language Programming 課程編碼:161002 學 分:4.5分
總 學 時:72學時,其中,理論學時:52學時;上機學時:20學時。適用專業:全校理工科各專業 先修課程:計算機基礎 執 筆 人:李新玉 審 訂 人:杜友福
一、課程的性質與任務
《C語言程序設計》是為全校所有的理工科專業的學生開設的公共基礎課,也是一門重要的必修課。其目的是使學生掌握程序設計的基本方法,培養學生掌握利用計算機處理問題的思維方法與應用能力。要求學生掌握程序的三種基本結構及結構化的程序設計方法,了解并掌握幾種典型的算法,并且能夠熟練地運用C語言編寫各種應用程序,為進一步學習其它相關課程奠定基礎。
二、教學內容與學時分配
第一章
程序設計基本概念
(3學時)本章重點:
一、算法及特性;
二、結構化程序設計方法。難點:算法設計及其表示。第一節 程序和程序設計
一、程序;
二、程序設計。第二節 算法
第三節 結構化程序設計方法
第四節
C語言程序的基本結構
第二章 數據類型、運算符和表達式
(5學時)本章重點:
一、標識符的正確使用;
二、各種基本數據類型的使用;
三、算術運算符的優先級和結合性;
四、表達式計算中的類型轉換。難點:
一、各種類型數據在計算機內存中的存儲形式;
二、自增自減運算。
第一節 C語言的數據類型 第二節 常量與變量 第三節 整型數據 第四節 實型數據 第五節 字符型數據
第六節 算術運算符與算術表達式 第七節 賦值運算符與賦值表達式
一、賦值運算符和賦值表達式;
二、復合的賦值表達式;
三、自加、自減運算符;
四、賦值運算中的類型轉換。
第八節 逗號運算符與逗號表達式
第三章 順序結構程序設計
(4學時)本章重點:
一、printf函數;
二、scanf函數。難點:輸入與輸出時的格式控制。第一節 C語句概述
第二節 賦值語句
第三節 數據的輸入與輸出
一、printf函數;
二、putchar函數;
三、scanf函數;
四、getchar函數 第四節 順序結構程序舉例
第四章 選擇結構程序設計
(4學時)本章重點:
一、邏輯值的表示、使用及其運算;
二、關系運算符的運算規則及關系表達式;
三、邏輯運算符的運算規則及邏輯表達式;
四、if語句;
五、switch語句的形式與執行過程。難點:
一、邏輯表達式求值時的“非完全求解法”;
二、條件運算符具有的自右向左的結合性及條件表達式的求解過程;
三、if語句的嵌套使用問題;
四、switch語句的執行過程及在switch語句中正確使用break語句的方法。
第一節 關系運算和邏輯運算
一、邏輯量及其在C語言中的表示;
二、關系運算符和關系表達式;
三、邏輯運算符和邏輯表達式。
第二節 if語句
第三節 條件運算符和條件表達式
第四節 switch語句
第五節 語句標號和goto語句(本節內容僅要求一般了解)
第六節 選擇結構程序舉例
第五章
循環結構程序設計
(6學時)本章重點:
一、while循環、do-while循環及for循環的構成、執行過程及使用方法;
二、循環嵌套的使用方法;
三、用循環結構實現的典型算法,如:累加、階乘、窮舉法、遞推法等。難點:
一、for循環使用時的靈活性,如:表達式的缺省及其處理、循環體是空語句等;
二、多重循環(即循環嵌套)的使用;
三、break語句和continue語句的作用和區別。
第一節 while語句
第二節 do-while語句
第三節 for語句
第四節 循環的嵌套
第五節 break和continue語句在循環體中的作用
一、break語句;
二、continue語句。
第六節 用if語句和goto語句構成的循環(本節內容僅要求一般了解)第七節 循環結構程序舉例
第六章 數組
(6學時)本章重點:
一、各類數組的定義、引用及初始化;
二、用字符數組來處理字符串;
三、數組應用的典型算法,如:求最大/最小值、排序等;
四、字符串處理函數。難點:
一、二維數組的存儲結構;
二、字符數組與字符串的關系;
三、字符串的輸入輸出。
第一節 一維數組
第二節 二維數組
第三節 字符數組
一、字符數組的定義與引用;
二、字符數組的初始化;
三、用字符數組來存放字符串;
四、字符數組的輸入和輸出;
五、用于字符串處理的函數;
六、字符數組應用舉例。
第七章 函數
(6學時)本章重點:
一、庫函數的正確使用;
二、函數的定義、調用和說明的方法;
三、調用函數和被調用函數之間的數據傳遞規則;
四、函數的遞歸調用方法。難點:
一、函數定義、調用和說明三者的關系;
二、傳值調用、傳址調用的含義及使用;
三、遞歸的實現方法。
第一節 庫函數
第二節 函數的定義和返回值 第三節 函數的調用
第四節 函數的說明
第五節 調用函數和被調用函數之間的數據傳遞 第六節 函數的遞歸調用 第七節 程序舉例
第八章
用戶標識符的作用域和存儲類型
(4學時)本章重點:
一、作用域與生存期的基本概念;
二、局部變量、全局變量的作用域、生存期及各自使用時的特點;
三、static說明對局部變量和全局變量的影響;
四、擴展全局變量作用域的方法。難點:
一、4種存儲類型變量的說明方式、特點及適用范圍;
二、靜態局部變量的初始化及其對程序的影響;
三、全局變量與局部變量同名時的處理。
第一節 局部變量、全局變量和存儲分類 第二節 局部變量及其作用域和生存期 第三節 全局變量及其作用域和生存期 第四節 函數的存儲分類
第九章
編譯預處理
(2學時)
本章重點:
一、不帶參數的宏定義;
二、文件包含的作用;
三、編譯預處理命令在程序中的實際作用。難點:
一、帶參數的宏定義的替換過程;
二、宏調用與函數調用的區別。
第一節 宏定義 第二節 文件包含
第三節 條件編譯(本節內容僅要求一般了解)
第十章
指針
(4學時)本章重點:
一、指針和指針變量的概念;
二、指針變量的引用;
三、一維數組與指針;
四、指針變量作為函數的參數。難點:
一、指針與內存地址的關系;
二、指針與數組的地址的關系;
三、函數指針;
四、數組的三種引用方式(下標法、首地址增量法、指針變量法)。
第一節 指針的基本概念
第二節 指針變量的定義與引用 第三節 函數之間地址值的傳遞 第四節 一維數組和指針
第五節 二維數組和指針(本節內容僅要求一般了解)第六節 字符串與指針
第七節 函數與指針(本節內容僅要求一般了解)
第十一章 結構體、共用體和用戶定義類型
(4學時)本章重點:
一、結構體類型與結構體類型變量的定義;
二、結構體類型變量的引用方法、“.”操作符的意義以及其優先級;
三、結構體數組的定義形式、初始化及其引用方式;
四、指向結構體的指針。難點:
一、指向結構體的指針;
二、結構體數組;
三、鏈表的概念及其對鏈表的一些簡單操作;
四、結構體變量的成員與共用體變量的成員在內存中的分布形式;
五、結構體變量及結構體指針作為函數的參數。
第一節 結構體類型 第二節 結構體數組
第三節 指向結構體的指針 第四節 結構體與函數 第五節 鏈表
第六節 共用體(本節內容僅要求一般了解)第七節 枚舉類型(本節內容僅要求一般了解)第八節 用typedef說明一種新類型名(本節內容僅要求一般了解)
第十二章 位運算
(2學時)本章重點:
一、位運算符的語義及作用;
二、位運算的應用。難點:位段的概念及使用。第一節 位運算的概念 第二節 位運算舉例
第三節 位段(本節內容僅要求一般了解)
第十三章 文件
(2學時)本章重點:
一、文件指針的概念;
二、文件打開和關閉;
三、fscanf函數和fprintf函數。難點:各種文件打開方式的作用。
第一節 C語言文件的概念 第二節 文件指針
第三節 文件的打開與關閉 第四節 文件的讀寫
第五節 文件定位函數(本節內容僅要求一般了解)
三、教學基本要求
本課程的基本要求是掌握程序設計的基本原理、概念和方法;在介紹算法、數據結構、計算方法、結構化程序設計方法的基礎上,主要介紹C語言及其程序設計方法及應用。主要內容包括:了解C語言的各種數據類型的特點及其運用方法;掌握各類語句的語法及功能;了解算法的描述方法,并掌握一些基本的典型算法;了解程序的三種基本結構,并初步掌握結構化的程序設計方法;掌握在微機中運行C程序的過程和程序調試的方法;能夠閱讀、理解簡單的C程序,并能自己動手編寫小型的應用程序。
四、上機內容與學時分配
1、順序結構程序設計
2學時
2、選擇結構程序設計
2學時
3、循環結構程序設計
4學時
4、數組
4學時
5、函數
4學時
6、指針
2學時
7、結構體與共用體
2學時
五、大綱說明
本大綱適用于全校理工科各專業。本課程宜安排在學生學完“計算機基礎”課程之后的第二學期進行,教學總時數為72學時,其中課堂講授52學時,計劃內上機學時為20學時,另外需要學生多利用業余時間自主安排上機學習。本課程的課堂教學全面采用多媒體CAI技術,按照本大綱的內容進行教學。課程的重點是第三、四、五、六、七章的基本內容;難點主要是第六、七、十章的部分內容。
六、主要參考書
1、《C語言程序設計》第一版,杜友福主編,科學出版社,2004年1月。
2、《C語言程序設計導學》第一版,杜友福主編,科學出版社,2004年1月。
3、《C程序設計》第一版,譚浩強編著,清華大學出版社,1991年7月。
第二篇:語言程序設計教學大綱(新)
《匯編語言程序設計》理論課程教學大
綱
適用專業:計算機科學與技術
計算機科學與技術系 2009年7月15日
《匯編語言程序設計》理論教學大綱
課程代碼:08120013 學 分:3 理論學時:54
課程類別:專業必修
一、課程的目的與任務
匯編語言是高等院校計算機軟、硬件及應用專業的專業基礎(核心)課,它不僅是計算機原理、接口技術及操作系統等其它核心課程的先行課,而且對訓練學生掌握程序設計技術、加深對計算機工作原理的理解有非常重要的作用。通過本課程的學習,使學生了解80x86計算機組織,掌握8086至Pentium微處理器的指令系統和尋址方式,掌握匯編語言程序設計基本思想和方法,同時通過匯編語言程序設計進一步掌握利用程序設計充分發揮計算機效率的基本思想。能進行匯編語言程序的設計、調試。
二、課程內容與要求
1、基本知識(2學時)
教學內容: 1.1 進位計數制與不同基數的數之間的轉換
1.2 二進制數和十六進制數運算 1.3 計算機中數和字符的表示 1.4 幾種基本的邏輯運算
教學要求:要求學生深刻理解與牢固掌握二進制數、八進制數、十六進制數、十進制數各數制格式和互換方法, “AND”“OR”“NOT”“XOR”邏輯運算;了解數的補碼的加減法,字符的表示法。
重點: 計算機中的數制格式和互換。補碼的加減法,字符的表示法。難點:計算機中的數制格式和互換。2、80x86計算機組織(2學時)教學內容: 2.1 80x86微處理器 2.2 2.3 2.4 2.5 基于微處理器的計算機系統構成 中央處理器 存儲器 外部設備
教學要求:熟練掌握80x86的微處理器、中央處理器、各寄存器的作用和存儲單元物理地址的計算;一般掌握存儲器概念;了解計算機系統和外部設備。
重點:80x86系列CPU寄存器結構、功能和尋址方式。
難點:80x86系列CPU寄存器結構、功能和尋址方式;特別是段寄存器和標志寄存器的尋址方式及使用用法。3、80x86的指令系統和尋址方式(16學時)教學內容: 3.1 80x86的尋址方式
3.2 程序占有的空間和執行時間
3.3 80x86的指令系統
教學要求:熟練掌握80x86的各種尋址方式,數據傳送指令,加,減,乘除指令,邏輯運算指令,移位指令,串處理指令,控制轉移指令,循環指令;一般掌握處理機控制指令,輸入輸出指令,中斷指令,十進制調整指令;了解IBM-PC機器語言指令。
重點:80x86的尋址方式;80x86的指令系統。
難點:80x86的各種尋址方式;數據傳送指令;算術指令;移位指令。各種數制運算指令的格式,使用方法,尋址方式和對標志位的影響,特別是對溢出標志位OF的影響。
4、匯編語言程序格式(8學時)教學內容: 4.1 4.2 4.3 匯編程序功能 偽操作
匯編語言程序格式
4.4 匯編語言程序的上機過程
教學要求:熟練掌握各種偽操作、匯編語言程序格式和上機過程;一般掌握匯編程序功能。重點:匯編源程序的書寫格式及編譯和連接程序的使用。
難點:熟練掌握各種偽操作、匯編語言程序格式和上機過程;
5、循環與分支程序設計(6學時)教學內容: 5.1 5.2 循環程序設計 分支程序設計
5.3 如何在實模式下發揮80x86及其后繼機型的優勢
教學要求:熟練掌握循環程序結構形式與設計方法及多重循環程序設計、分支程序設計結構形式和分支程序設計方法;一般掌握在實模式下發揮80x86及其后繼機型的優勢。重點:循環程序結構形式與設計方法及多重循環程序設計、分支程序設計結構形式和分支程序設計方法。難點:循環程序設計方法和分支程序設計方法。
6、子程序結構(6學時)教學內容:
5.4子程序的設計方法 6.2 子程序的嵌套
6.3 子程序的舉例
教學要求:熟練掌握子程序的設計方法、過程定義偽操作、子程序的調用和返回;一般掌握子程序的參數傳送;理解結構偽操作STRUC的定義,預賦值和調用;了解子程序的嵌套與遞歸和DOS功能調用,學會應用子程序解題。
重點:子程序的設計方法、過程定義偽操作、子程序的調用和返回,學會應用子程序解題。難點:子程序設計以及調用及程序模塊間的數據傳遞方法。
7、高級匯編語言技術(8學時)教學內容: 7.1 宏匯編 7.2 7.3 重復匯編 條件匯編
教學要求:熟練掌握宏定義、宏調用、宏展開以及重復偽操作和不定重復偽操作,掌握各條件偽操作的使用。重點:常用偽指令的功能和使用方法。
難點:常用偽指令的功能、用法及注意事項。
8、輸入輸出程序設計(4學時)教學內容: 8.1 I/O設備的數據傳送方式 8.2 程序直接控制I/O方式 8.3 中斷傳送方式
器存取(DMA)方式,了解I/O端口與I/O指令以及中斷分類、中斷向量表、中斷過程、優先級和中斷嵌套、中斷處理程序。
重點:I/O指令的概念及使用。軟硬件中斷的概念、功能、用途。
難點:設置、取中斷的方法。CPU與外設的數據傳送方式及直接存儲器存取(DMA)方式。
9、BIOS和DOS中斷(2學時)教學內容: 9.1 9.2 9.3 9.4 鍵盤I/O 顯示器I/O 打印機I/O 串行通信口I/O 顯示中斷、DOS顯示功能調用、BIOS與DOS的打印功能、中斷通信接口、串行口功能調用。
重點:BIOS和DOS中斷功能調用;中斷處理程序的編寫。難點:中斷處理程序的編寫。
教材及主要參考書: 《IBM-PC匯編語言程序設計》(第2版)清華大學出版社 編者:沈美明 溫冬嬋編著 教學要求:熟練掌握設置、取中斷的方法,一般掌握CPU與外設的數據傳送方式及直接存儲教學要求:熟悉字符碼與掃描碼,一般掌握BIOS鍵盤中斷、DOS鍵盤中斷、字符屬性、BIOS 4
第三篇:C語言程序設計教學大綱(2014)
《C語言程序設計》
(一)教學大綱
課程名稱:C語言程序設計
英文名稱:The C Programming Language 課程編號: 000331,000332
課程性質:基礎必修
任課教師:張萍、張莉、黃達明、陶燁、潘亦 教學課時:3-4學時/周 實驗課時:4學時/周 課程學分:4學分/6學分 授課周數:18周
授課課時:68
實驗課時:68 教學對象:匡亞明學院、化學化工學院、地理與海洋科學學院、環境學院、大氣科學學院、天文與空間科學學院、地球科學與工程學院、工程管理學院、生命科學院
先修課程:大學計算機信息技術
一、課程目標
通過對本門課程的學習,學生能夠掌握基本的算法和面向過程的程序設計一般方法;能熟練地用C語言編寫調試各類數值計算程序和數據處理程序;幫助培養學生的計算思維能力,完善其對各自專業研究領域問題的抽象能力并進而應用計算裝置來自動化解決問題的能力。
二、課程內容和學時分配
第1章 C程序設計概述(2學時)
1.1 程序設計語言、程序與程序設計 1.2 C語言概述
掌握程序設計語言、程序和程序設計的基本內涵,了解C語言的發展過程和特性,掌握C語言程序的結構與執行以及上機調試運行C語言程序的過程。第2章 數據的表示與存儲(4學時)
2.1 C語言的數據類型 2.2 整型數據 2.3 浮點型數據 2.4 字符型數據 2.5 字符串數據 2.6 指針型數據 2.7 枚舉型數據
2.8 符號常量與const限定 2.9 使用typedef命名數據類型
理解C語言中數據類型的含義和作用,掌握整型、浮點型和字符型常量和變量的使用及聲明和初始化的方式,掌握字符串常量的表現形式,掌握地址的概念和指針變量聲明及初始化的方式,掌握枚舉數據類型的定義方式和枚舉型變量的聲明,掌握符號常量的使用方式,掌握用typedef命名數據類型的方式。第3章 基本運算與輸入輸出(6學時)
3.1 運算符與表達式概述 3.2 數據對象的存取 3.3 基本數值運算 3.4 其他常用運算 3.5 輸入與輸出
掌握運算符和表達式的含義和作用,間接引用運算與間接引用數據對象的方法,賦值運算和賦值表達式的使用方式,算術運算符和算術表達式的使用方式,常見的數值計算與數學庫函數的使用以及數值計算中溢出、有效數字與計算誤差,了解強制類型轉換運算及其表達式,sizeof、逗號運算符及其表達式的使用方式,掌握字符數據的輸入輸出函數和格式化輸入輸出函數的使用方式。第4章
結構化程序設計(8學時)
4.1結構化算法及其表示 4.2 結構化程序開發
掌握算法的含義,基本算法結構及其表示,結構化程序設計方法,表示順序、選擇和循環算法結構的語句,break語句和continue語句,無條件轉移語句的應用和使用方式。第5章 常用數值計算算法及其程序設計(6學時)
5.1 素數判斷 5.2 最大公約數求解
5.3 窮舉法求滿足條件的一組解 5.4 級數近似計算 5.5 一元非線性方程求根 5.6 定積分近似計算
掌握判斷判斷算法、求最大公約數算法,能夠熟練運用窮舉法求滿足條件的一組解,掌握級數近似計算的遞推法,掌握用牛頓迭代法和二分法及弦截法求一元非線性方程的根,用梯形法和矩形法進行定積分近似計算。第6章 模塊化程序設計與函數(12學時)
6.1 函數概述 6.2 函數定義 6.3 函數返回 6.4 函數調用 6.5 標識符的作用域 6.6 變量的存儲屬性
*6.7 參數個數可變函數的定義及調用【不作要求】 6.8 編譯預處理及預處理命令
掌握函數定義的方法,掌握函數之間數據的傳遞途徑,掌握函數的調用方法,掌握庫函數的使用,理解函數的作用及掌握模塊化程序設計方法,掌握程序調試的基本方法,掌握函數的間接調用,掌握返回指針的函數的應用,掌握函數調用時傳遞地址的方法,理解變量的作用域及生命期屬性,理解遞歸函數的執行過程,掌握包含遞歸函數的程序的編寫與調試方法。第7章 數組(12學時)7.1 數組概念 7.2 一維數組 7.3 二維數組
7.4 字符與字符串處理 *7.5指針數組及應用 *7.6動態數組【不作要求】
掌握一維數組的聲明與初始化形式,掌握一維數組元素的直接與間接引用方法,掌握一維數組作函數實參的應用,掌握與一維數組相關的常用算法,掌握二維數組的聲明與初始化形式,掌握二維數組元素的直接與間接引用方法,掌握二維數組作函數實參的應用,掌握與二維數組相關的常用算法,掌握使用一維字符數組表示字符串的方法,掌握字符與字符串處理函數的應用,掌握使用二維字符型數組表示字符串集合的方法,掌握字符串集合的處理方法,掌握指針數組的聲明、初始化及數組元素的引用,掌握指向指針型數據的指針變量的聲明、引用,掌握帶參數的主函數的編寫及程序的運行方法。第8章 結構、聯合與指針(8學時)8.1結構數據類型 *8.2聯合類型 8.3指針小結
掌握結構類型定義的方法,掌握結構類型變量與數組的聲明和使用,掌握函數間結構類型數據的傳遞方式,掌握動態內存分配、釋放函數的使用,掌握單向鏈表的基本操作。
第9章 文件操作(4學時)9.1 文件概念 9.2 C文件系統
9.3 利用高級I/O庫函數存取文件
了解C語言的文件系統,掌握使用高級I/O庫函數存取文件的方法。第10章 位運算(2學時)10.1 位運算符
10.2 位段【不作要求】
掌握位邏輯運算符和移位運算符的基本概念和方法
課程設計
將所學知識綜合應用到C語言程序設計中,開發具有一定規模和實際應用價值的程序產品,最好能與專業應用相結合(1至3人為一個項目開發小組)。
三、課程考核
平時(實驗)占10%
課程設計占20%
期中筆試占20%,期末筆試和上機占50%
四、教材
姜恒遠,陶燁,張莉,張萍,黃達明.C語言程序設計教程.高等教育出版社,2010(8).姜恒遠,張莉,陶燁,張萍,黃達明,金瑩.C語言程序設計教程學習指導.高等教育出版社,2010(8).五、參考書目
1.Kernighan B W,Ritchie D M.The C Programming Language.PRENTICE-HALL.INC,1983.2.Digital Research.C Language programmer's Guide for the IBM Personal Computer Disk Operating System.3.C Primer Plus(第四版)中文版,技橋工作室譯,人民郵電出版社,2002(7).4.譚浩強.C程序設計,清華大學出版社,1991(7).5.Deitel H M,Deitel P J.C程序設計教程,薛萬鵬等譯,機械工業出版社,2000(7).6.Kernighan B W,Ritchie D M.C程序設計語言(第2版),徐寶文、李志譯,機械工業出版社,2003(6).7.Kelley A,Pohl I.C語言教程(第4版),徐波譯,機械工業出版社,2007(1).
第四篇:《C語言程序設計》教學大綱
《C語言程序設計》教學大綱
第一部分 大綱說明
一、課程的目的與任務
本課程將以結構化程序設計思想指導學習者運用C語言進行程序設計,充分利用C語言的結構性好,書寫格式自由簡潔,數據類型豐富,表達式類型多樣化,程序執行效率高,可移植性好等特點,使學習者養成嚴謹的程序設計風格和習慣,在程序設計基本技能方面得到良好的訓練,為后繼課程的學習及今后的實際應用打下良好的基礎。
二、課程的基本要求
1.教學基本要求和學習方法建議
(1)弄清概念、注重實踐
學習時一定要模仿例題親自編制一些實用程序,加強對概念的正確認識。同時要注意上機實踐,把不清楚的問題通過上機一一解決。從而不斷增加學習興趣,提高編程能力。
(2)由淺入深、循序漸進
先學習簡單的、容易掌握的部分,以后再逐步掌握C語言的精華——指針及各種靈活的表達式。
(3)著重語言的使用
由于C語言本身比較復雜,應把學習重點放在語言的使用上,即如何正確使用C語言編寫程序,而不把重點放在算法的設計上。
(4)盡量不涉及太多的硬件知識
C語言既能編寫應用軟件,也能編寫系統軟件,而編寫系統軟件勢必需要一定的硬件知識。在學習本課程時應盡可能地不涉及太多的硬件知識,以便于理解和掌握。
(5)忽略非主要細節
不死摳非主要細節,集中精力放在最基本、最常用部分的學習上,待建立一定的基礎以后再深入到一些非主要細節的討論。
2.教學的重點、難點
重點為熟練掌握C語言的數據類型(基本類型、構造類型、指針類型等)和各類運算符,能正確使用表達式實現各種數據的加工。熟練掌握程序設計的三種基本結構(順序、選擇、循環)的特點,能使用相關語句完成這三種基本程序的設計任務。掌握C語言的常用的庫函數的使用,以及用戶函數的定義、調用、參數傳遞等方法。培養學生的程序設計能力,初步認識軟件開發的基本思想。難點為掌握閱讀和分析程序的方法和技巧,掌握設計和調試程序的方法和技巧。
3.教學計劃中前后課程的聯系
C語言比較復雜、較難掌握,學習者應該先學習計算機基礎知識。
C語言是數據結構、軟件工程、程序設計方法、編譯原理等課程的基礎與工具。
4.考試考核方式
實踐和期末筆試考核,比例為 4:6。5.學時
17周,周3學時
6.教材編選的原則
根據學生實際情況和社會發展的需要,選擇了《C語言程序設計與實訓》。該教材編寫的原則是:結構清晰,內容安排合理,難度循序漸進,描述準確清楚,各章節配備一定實訓題目和一定數量的習題和思考題,重點培養學生用C語言解決實際問題的能力,適合高職高專學生學習的特點。
7.參考書目
1.譚浩強 《C程序設計》 清華大學出版社 2002
2.薛鋼等 《C語言實用教程》 吉林科學技術出版社 1997 3.徐金吾等 《Turbo C使用大全》 北京科海培訓中心 1990
4.王士元 《C高級實用程序設計》清華大學出版社 1995
5.國家教育考試中心 《全國計算機等級考試考試大綱》 高等教育出版社 1995 6.牛連強等 《C語言程序設計筆試習題點津》 大連理工大學出版社 1999 7.王洪 《Turbo C 2.0使用指南》陜西電子編輯部(內部參考)1989 8.譚浩強 《C程序設計上機指導書》 清華大學出版社 1999
9.馬靖善、秦玉平等 《C語言程序設計》 清華大學出版社 2005
第二部分 講授大綱
第1章 C 語言概述
學習目的和要求:
了解C語言出現的歷史背景,了解C語言的特點,熟悉C環境,熟練掌握C程序的上機步驟,了解C程序的組成。教學重點:
C 程序的上機步驟。教學難點:
C程序的組成。
課時分配:
本章講授2學時,上機實踐 1學時。
講授內容綱要:
1.C語言發展及特點。
2.Turbo C上機操作環境。
3.簡單的C程序介紹。
4.C程序的上機執行過程。思考題:
1.C程序組成。2.C程序執行過程。
第2章 C語言基礎
學習目的和要求:
熟練掌握幾種基本數據類型的存儲方式,表示方法;熟練掌握指針的定義和使用;掌握不同類型間數據轉換的原則與方法;熟練掌握有關運算符與表達式的運用。
教學重點:
整型、實型、字符型、指針型數據的定義和使用。運算符和表達式的運用。
教學難點:
指針型數據的定義和使用、不同類型間數據轉換的原則與方法。課時分配:
本章講授2學時,上機實踐 1學時 講授內容綱要:
1.常量和變量。
2.各種運算符和表達式。
3.指針類型。思考題:
1.數據類型有哪些。2.各種運算符的使用。
第3章 順序結構
學習目的和要求:
清楚順序結構設計的思路,掌握基本的輸入、輸出函數的使用。教學重點:
結構化程序設計思想、各種輸入、輸出函數 教學難點:
scanf()函數和printf()函數的格式控制字符串。課時分配:
本章講授 2學時,上機實踐 1學時
講授內容綱要:
1.三種基本結構。
2.賦值語句。
3.輸入、輸出函數。思考題:
1.三種基本結構的特點。2.輸入、輸出函數的應用。
第4章 選擇結構
學習目的和要求:
了解if、switch-case和goto三種語句的一般形式及其應用,掌握選擇結構的特點。教學重點:
if、switch-case語句的應用。教學難點:
if語句嵌套。課時分配:
本章講授2學時,上機實踐 1 學時
講授內容綱要:
1.if語句的應用。
2.switch-case語句的應用。
3.goto語句的應用。
1.if語句使用的注意事項。
2.switch-case語句中break的作用。
第5章 循環結構
學習目的和要求:
了解三種循環語句的區別,掌握窮舉法和迭代法的思想及其應用,提高解決問題的能力。教學重點:
三種循環語句的特點及應用。思考題: 教學難點:
窮舉法和迭代法的思想及其應用。課時分配:
本章講授 4學時,上機實踐 2學時
講授內容綱要: 1.while、do-while和for三種循環語句的一般形式及其應用。2.break語句和continue語句的一般形式及其應用。
3.窮舉法和迭代法的思想及其應用。思考題:
1.while、do-while和for三種循環語句的區別。2.break語句和continue語句的應用的特點。
第6章 數組
學習目的和要求:
掌握數組的定義、引用技巧和初始化方法;掌握字符串的輸入、輸出方法;會用字符串處理函數解決字符串問題。教學重點:
數組的應用、字符串數組的應用。教學難點:
字符串數組的應用。課時分配:
本章講授4學時,上機實踐 2學時
講授內容綱要:
1.數組的定義、引用和初始化方法。
2.字符串的輸入、輸出及處理函數。
3.數組的應用。思考題:
1.字符串與字符數組的區別。2.數組的初始化的特點。
第7章 函數
學習目的和要求:
掌握函數的定義和調用;掌握函數調用時的參數傳遞方式;理解變量的存儲屬性和作用范圍;掌握內部函數和外部函數的定義和使用。
教學重點:
函數的參數傳遞,函數的調用,數組名和指針作為函數參數。變量的存儲屬性。
教學難點:
函數的嵌套調用與遞歸調用;變量的存儲類別。
課時分配:
本章講授4學時,上機實踐2學時
講授內容綱要:
1.函數的定義與調用。
2.參數傳遞。
3.函數的嵌套和遞歸調用。4.宏定義與文件包含。5.主函數與命令行參數。6.運行一個多文件的程序。
思考題:
1.主函數的參數傳遞。
2.各種方式函數參數傳遞方式及有關規定與使用技巧。
3.函數中變量定義位置及其作用域之間關系。4.如何運行一個多文件的程序。
第8章 結構體、共用體和枚舉類型
學習目的和要求:
熟練掌握結構體類型的概念、定義以及結構體變量的定義和引用。熟練掌握結構體數組和結構體指針變量的定義和使用。掌握鏈表的概念和應用。掌握共用體類型的概念、定義以及共用體變量的定義和變量成員的引用。掌握枚舉類型的概念、定義以及枚舉變量的定義和引用。
教學重點:
結構體變量、結構體數組與結構體指針的定義和引用。教學難點:
結構體數組與結構體指針。
課時分配:
本章講授4學時,上機實踐2學時
講授內容綱要:
1.結構體類型的概念、定義以及結構體變量的定義和引用。
2.結構體數組和結構體指針變量的定義和使用。
3.鏈表的概念和應用。
4.共用體類型的概念、定義以及共用體變量的定義和變量成員的引用。5.枚舉類型的概念、定義以及枚舉變量的定義和引用。思考題:
1.結構體、共用體兩種類型的區別。
2.鏈式存儲適合的操作對象。
3.函數參數傳遞中用結構體和結構體指針之間的優劣比較。
第9章 位運算
學習目的和要求:
掌握六種位運算的運算符、運算規則和功能,并能利用這六種位運算符來解決一些實際問題。
教學重點:
位運算的應用。教學難點:
位段的定義與引用。
課時分配:
本章講授2學時,上機實踐1學時
講授內容綱要: 1.六種位運算的運算符、運算規則和功能。
2.位段的定義與引用。
思考題:
1.如何測試數字的位數是0還是1?
2.如何實現循環移位?
第10章 文件系統
學習目的和要求:
掌握文件和文件指針的概念,掌握文件的打開、關閉和讀寫等基本操作。
教學重點:
文件的打開、關閉、讀寫。
教學難點:
文件的讀寫。
課時分配:
本章講授 4 學時,上機實踐 1 學時
講授內容綱要:
1.文件系統相關基本概念及類型設置。
2.文件打開、關閉函數的使用。3.文件讀寫函數的使用。4.文件定位與隨機讀寫。
5.文件的出錯檢測和處理。思考題:
1.文件打開和關閉的含義。
2.哪些文件操作函數會改變文件的內部指針位置。
第11章 綜合實訓
學習目的和要求:
了解程序開發的過程,掌握菜單的設計,更加熟練地應用函數,熟練地使用文件,提高學生的程序設計的能力。
教學重點:
程序開發的步驟、菜單的設計。
教學難點:
菜單的設計。
課時分配:
本章講授 2學時,上機實踐2學時
講授內容綱要:
1.程序開發的步驟。
2.菜單的設計。
3.所有知識的綜合應用:設計學生成績管理系統。思考題:
1.程序開發的步驟。
2.如何實現游標控制菜單。
第五篇:《C語言程序設計》教學大綱
《C語言程序設計》教學大綱
課程名稱:《程序設計語言(C)》 英文名稱:The C Programming Language 課程編碼: 學
分: 參考學時:64 實驗學時:64
適用專業:計算機專業
一、課程目標及要求
《C語言程序設計》是計算機專業的必修課,是我院計算機專業重點課《程序設計語言》的重要組成之一。學習《C語言程序設計》,應使學生達到以下要求:
1、掌握 C 程序的基本結構和 C 語言基本的數據結構,熟悉 C 程序的編輯、編譯、調試和運行過程;
2、了解程序設計的一般方法、結構化程序設計思想,熟悉算法描述工具 N-S 流程圖的使用及常用算法;
3、能夠熟練地閱讀用 C 語言編寫的程序;
4、能運用結構化程序設計方法編寫 C 程序;
5、能調試、運行程序。
二、課程學習要求
本課程是理論與實踐相結合的一門課程。要求學生在學習理論知識的同時,積極上機實踐,以達到對理論知識的熟練簡明應用。
三、教學預修課程:
計算機文化基礎
四、教學重點、難點:
本課程的重點是C的基本數據類型及運算、分支結構和循環結構、數組、函數、指針以及結構體的使用。
難點是函數的調用,指針及結構體的使用。
五、教學方法:
理論講授與實踐相結合。
六、教學內容與學時分配建議
(一)總課時數
總課時數為:64*2=128學時,其中,理論為:32+32=64學時;實驗:32+32=64學時。
(二)教學內容及課時分配
1.C 語言的結構(2 學時)
(1)程序的構成,main 函數和其他函數。
(2)頭文件、數據說明、函數的開始和結束標志。
(3)源程序的書寫格式。
(4)C 語言的風格。
(5)程序的編輯、編譯、連接步驟及 TURBO C 環境。
實驗一
c程序的運行環境和運行一個c程序的方法(2學時)
2. C 數據類型及各種表達式(4 學時)
(1)C 的數據類型(基本類型、構造類型、指針類型、空類型)及其定義方法。
(2)C 運算符的種類、運算優先級和結合性。
(3)不同類型數據間的轉換與運算。
(4)C 表達式類型(賦值表達、算術表達式、關系表達式、邏輯表達式、條件表達式、逗號表達式)和求值規則。
實驗二
數據類型、運算符和表達式(2學時)
3.算法與順序程序設計(4 學時)(1)算法的概念、特性、算法的描述。
(2)常用算法。
(3)表達式語句、空語句、復合語句。
(4)數據的輸入與輸出,輸入輸出函數的調用。
實驗三
順序結構的程序設計(4學時)
4.選擇結構程序設計(4 學時)(1)用 if 語句實現選擇結構。
(2)用 switch 語句實現多分支選擇結構。
(3)選擇結構的嵌套。
實驗四 選擇結構的程序設計(6學時)
5.循環結構程序設計(6 學時)(1)for 循環結構。
(2)while 和 do while 循環結構。
(3)continue 語句和 break 語句。
(4)循環的嵌套。
實驗五 循環結構的程序設計(6學時)
6.數組(6 學時)
(1)一維數組的定義、初始化和引用。
(2)二維數組的定義、初始化和引用。(3)字符串與字符數組。
實驗六
數組(6學時)
7.函數(6 學時)
(1)庫函數的正確調用。
(2)函數的定義方法。
(3)函數的類型和返回值。
(4)形式參數與實在參數,參數值的傳遞。
(5)函數的嵌套調用和遞歸調用。
(6)局部變量和全局變量。
(7)變量的存儲類別(自動、靜態、寄存器、外部),變量的作用域和生存期。
(8)內部函數與外部函數。
實驗七
函數(6學時)
8.編譯預處理(建議穿插在各章中講)(4學時)(1)宏定義:不帶參數的宏定義;帶參數的宏定義。
(2)“ 文件包含”處理
實驗八
編譯預處理(4學時)
9.指針(10 學時)
(1)指針與指針變量的概念,指針與地址運算符。
(2)變量、數組、字符串的指針及指向變量、數組、字符串的指針變量。通過指針引用以上各類型數據。
(3)用指針作函數參數。
(4)返回指針的函數。
(5)指針數組,指向指針的指針,main 函數的命令行參數。
實驗九
指針(10學時)
10.結構體與共用體(10 學時)
(1)結構體的定義、初始化、引用
(2)結構體數組及結構體數組成員的訪問(3)結構體類型的指針(4)結構體型與函數(5)結構體處理鏈表(6)共用體(7)枚舉類型
(8)用Typedef定義類型
實驗十
結構體與共用體(10學時)
11.位運算(4 學時)
(1)位運算符的含義及使用。
(2)簡單的位運算。
實驗十一位運算(4學時)
12.文件操作(4 學時)只要求緩沖文件系統(即高級磁盤I/O系統),對非標準緩沖文件系統(即低級磁盤I/O系統)不要求。
(1)文件類型指針(FILE 類型指針)。
(2)文件的打開與關閉函數(fopen,fclose)。
(3)文件的讀寫函數(fputc,fgetc,fputs,fread,fwrite,fprintf,fscanf 函數),文件的定位(rewind,fseek 函數)。
實驗十二文件(4學時)
七、教學參考書目:
1.常玉龍等 《Turbo C 2.0實用大全》 北京航空航天大學出版社 1994 2.譚浩強 《C語言程序設計》第二版 清華大學出版社 1999 3.王麗娟 徐軍 戴寶華 榮政 《C程序設計》 西安電子科技大學出版社 2000 4.田淑清等 《C語言程序設計輔導與習題集》 中國鐵道出版社 2000 5.譚浩強 薛淑斌 崔武子 《C程序設計(二級)教程》 清華大學出版社 2001 6.崔培偉 《C/C++語言程序設計》 石油大學出版社 2001 7.譚浩強 《C語言程序設計》 清華大學出版社 2002 8.陳朔鷹 陳英 《C語言程序設計習題集(第二版)》人民郵電出版社 2003 9.朱連章等 高級實用程序設計(Visual C++)石油大學出版社 2003 10.方** 宋世發 湯欽林 李太芳 《C語言程序設計》 地質出版社 2006
制 定: 計算機基礎及技能教研室 執 筆 人: 馮建平審 定 人: 旭 日 制定時間: 2007年3月