一、课程名称:C语言程序设计
二、学分:4
三、先修课程:
四、课程的性质、目的和任务:
C语言是目前国内外最广泛使用的高级程序设计语言,是实践性很强的一门课程。本课程主要讲授C语言基本数据结构和常用算法,以及怎样运用结构化程序设计方法编写程序。通过学习C语言,帮助学生掌握C语言的基本原理、基本精髓,掌握模块化程序设计的基本方法和思想,C语言也是为进一步学习C++程序设计语言和可视化编程打下基础。
五、课程的教学基本要求及主要内容
第一章、
C语言概述
(1)了解C语言的特点;(2)掌握C语言程序的构成和书写风格;3)理解C语言的函数模块结构特点。
重点:C语言程序的构成和书写风格。
难点:C语言的函数模块结构。
第二章、算法
(1)算法的概念和性质;(2)掌握算法的构成要素和三种基本结构;(3)掌握结构化程序设计方法。
重点:算法的概念及N-S流程图的绘制。
难点:结构化程序设计方法
第三章、数据类型、运算符与表达式
(1)理解常量、变量的概念和定义方法;(2)掌握C语言三种数据基本类型(整型、实型、字符型)及其定义和使用方法;(3)掌握不同类型数据间的转换与运算。掌握算术运算符、赋值运算符和逗号运算符及其优化级与结合性,以及三种表达式的求值。
重点:数据基本类型、同类型数据间的转换与运算。
难点:逗号运算符及其优化级与结合性。
第四章、最简单的C程序设计
(1)理解C语言的语句分类和程序的三种基本结构;(2)掌握赋值语句的使用、握数据输入、输出函数的格式及使用。
重点:握数据输入、输出函数的格式及使用。
难点:转义字符。
第五章、选择结构程序设计
(1)掌握关系和逻辑运算符及其优先级与结合性;(2)掌握关系和逻辑表达式及各种混合表达式的求值;(3)理解条件运算符的功能和作用;(4)掌握条件运算符的使用;(5)掌握if语句的三种基本形式
和嵌套使用;(6)掌握用switch语句实现多分支选择结构。
重点:If语句的三种基本形式和嵌套使用。
难点:逻辑表达式及各种混合运算。
第六章、循环控制
(1)掌握
for 、while
、do-while语句格式,并能用它们实现循环及循环嵌套;(2)了解几种循环语句的区别;(3)掌握break与Continue语句的使用几区别;(4)能够编写简单、典型的循环控制程序。
重点:for,while,do-while语句。
难点:循环嵌套、环的比较。
第七章、数组
(1)掌握一维数组的定义和引用、并能够灵活运用;(2)了解二维数组的定义和初始化;(3)了解二维数组的使用、握字符数组的定义和使用;(4)使用基本的字符串处理函数。
重点:一维数组运用
难点:二维数组的使用。
第八章、函数
(1)理解函数的概念和
分类、掌握函数的定义、理解函数的类型和返回值;(2)熟练使用函数编程、理解函数的形式参数与实际参数大概念;(3)了解参数值的传递、握函数的嵌套、递归调用,并能够正确调用函数;(4)理解局部变量和全局变量及变量的存储类别、变量的作用域和生存期;(5)理解内部函数、外部函数的概念。
重点:函数的定义、变量的作用域和生存期。
难点:函数的嵌套、递归调用。
第九章、编译预处理
(1)掌握不带参数的宏定义及其使用;(2)了解带参数的宏定义;(3)掌握“文件包含”处理的概念及其作用。
重点:编译预处理的概念及其作用。
难点:带参数的宏定义。
第十章、指针
(1)理解指针的概念;(2)掌握指针变量的定义;(3)了解数组的指针和指向数组的指针变量;(4)了解字符串的指针和指向字符串的指针变量。
重点:指针变量的定义、使用。
难点:数组的指针和指向数组的指针变量
第十一章、结构体与共用体
(1)掌握结构体类型数据的定义、初始化及引用方法;(2)了解用指针和结构体构成单向链表;(3)了解共用体类型数据结构的定义、初始化及引用方法;(4)了解枚举数据类型,会用typedef定义类型
重点:结构体、用体类型数据类型。
难点:单向链表的建立、输出、删除与插入操作。
第十二章、位运算
(1)理解位运算符的含义及使用;(2)进行简单的位运算。
重点:位运算符使用。
难点:位运算符的含义。
第十三章、文件
(1)了解文件的概念;(2)掌握文件类型指针、掌握文件的打开与关闭。
重点:文件的打开与关闭、读写。
难点:文件类型指针。
第十四章、
C++语言基础
(1)了解C++的特点;(2)掌握最简单的C++程序设计及C++的输入和输出。
重点:C++的输入和输出。
三、课程作业
(1)每章布置2-5个作业题;(2)本门课程布置2-3次大作业。
四、自学安排
(1)第十四章第四节以后的章节;(2)第十五章面向对象的程序设计。
五、考试
期末考试有两部分组成,一部分以闭卷的形式,考查学生对基本理论、能力的掌握程度。另一部分上机测试。 六、考试方式:闭卷笔试
七、用教材:《C语言程序设计》;谭浩强编;清华大学出版社出版。
|