《C语言程序设计》理论教学大纲
- 格式:doc
- 大小:112.00 KB
- 文档页数:6
《C语言程序设计》教学大纲
一、课程基本信息
中文名称 C语言程序设计 英文名称 C Language Programming Design
适用专业 理、工科 先修课程 大学生计算机基础
课程类别 公共课 修读性质 必修
学分/学时 6学分/45学时(45) 考核方式 考试
二、教学目标
熟练掌握C程序设计的基础知识、基本概念;掌握程序设计的思想和编程技巧;熟练掌握C数据类型,深刻理解如动态存储结构,指针和链表等重要概念。理解后续课程《数据结构》中的表、堆栈、队列、树、二叉树等典型的数据结构的用C实现的方法。了解软件设计的基本方法和程序调试的基本过程。
三、教学内容及基本要求
第一章 C语言概述(理论3学时/实践2学时)
(一)教学目标
1. 了解C语言的历史、特点。
2. 掌握C语言的运行环境,初步了解运行一个C语言程序的过程。
(二)重点、难点
重点:C语言的特点
难点:C程序的上机步骤
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. C语言与C程序概述
2. C语言出现的历史背景;C 语言的特点;简单的C程序介绍,C程序的构成,函数的构成,空函数;C 程序的上机步骤:Turbo C与Visual C系统环境
3. 了解C语言和程序。
第二章 程序的灵魂--算法(理论3学时/实践1学时)
(一)教学目标
1. 掌握用流程图、N-S流程图、伪代码表示算法。
2. 理解结构化程序设计方法的概念。
(二)重点、难点
重点:用流程图、N-S流程图、伪代码表示算法
难点:用流程图、N-S流程图、伪代码表示算法
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 算法的概念
2. 简单算法举例
3. 算法的特性 4. 怎样表示一个算法
5. 结构化程序设计方法
第三章 数据类型、运算符与表达式(理论3学时/实践3学时)
(一)教学目标
1. 掌握几种基本数据类型的存储方式,表示方法。
2. 掌握不同类型间数据转换的原则与方法。
3. 掌握有关运算符与表达式的运用。
(二)重点、难点
重点:整型、实型、字符型数据
难点:运算符和表达式的运用
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. C的数据类型
2. 常量与变量
3. 整型数据
4. 实型数据
5. 字符型数据
6. 变量赋初值
7. 各类数值型数据间的混合运算
8. 算术运算符和算术表达式
9. 赋值运算符和赋值表达式
10. 逗号运算符和逗号表达式
第四章 最简单的C程序设计(理论3学时/实践3学时)
(一)教学目标
1. 掌握语句的概念。
2. 掌握字符数据输入输出函数
3. 格式输入输出函数的用法
(二)重点、难点
重点:字符数据输入输出函数格式输入输出函数
难点:格式输入输出函数
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. C语句概述
2. 赋值语句
3. 数据输入输出的概念及在C语言中的实现
4. 字符数据的输入输出
5. 格式输入与输出
6. 顺序结构程序设计举例
第五章 选择结构程序设计(理论3学时/实践3学时)
(一)教学目标
1. 熟练掌握关系、逻辑表达式的用法。
2. 熟练掌握选择型程序设计语句的用法。
(二)重点、难点
重点:关系逻辑表达式
难点:选择型程序设计语句
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 关系运算符和关系表达式
2. 逻辑运算符和逻辑表达式
3. if语句
4. switch语句
5. 程序举例
第六章 循环控制(理论5学时/实践5学时)
(一)教学目标
1. 熟练掌握三种循环语句的运用。
2. 掌握break和continue语句的运用。
(二)重点、难点
重点:循环语句;循环的嵌套;break和continue语句
难点:循环的嵌套
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 概述
2. goto语句以及用goto语句构成循环
3. while语句
4. do-while语句
5. for语句
6. 循环的嵌套
7. 几种循环的比较
8. break语句和continue语句
9. 程序举例
第七章 数组(理论6学时/实践6学时)
(一)教学目标
1. 掌握数组的概念和使用。
2. 掌握数组初始化的方法。
3. 掌握字符数组和字符串的应用
(二)重点、难点 重点:一维数组;二维数组和多维数组;字符数组
难点:二维数组和多维数组
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 一维数组的定义和引用
2. 二维数组的定义和引用
3. 字符数组
第八章 函数(理论6学时/实践6学时)
(一)教学目标
1. 掌握函数的定义和调用方法。
2. 理解变量的存储属性,作用范围
(二)重点、难点
重点:函数的定义;函数的参数及返回值
难点:函数的调用
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 概述
2. 函数定义的一般形式
3. 函数参数和函数的值
4. 函数的调用
5. 函数的嵌套调用
6. 函数的递归调用
7. 数组作为函数参数
8. 局部变量和全局变量
9. 变量的存储类别
10. 内部函数和外部函数
11. 如何运行一个多文件的程序
第九章 预处理命令(理论1学时/实践1学时)
(一)教学目标
掌握使用宏替换编写程序
(二)重点、难点
重点:宏定义
难点:宏调用
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 宏定义
2. “文件包含”处理
3. 条件编译 第十章 指针(理论5学时/实践5学时)
(一)教学目标
1. 掌握指针变量的定义与引用。
2. 掌握指针与变量,指针与数组,指针与字符串的关系。
3. 掌握用指针作为函数参数的方法,有关指针的算法。
(二)重点、难点
重点:指针与变量
难点:指针与数组
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 地址和指针的概念
2. 变量的指针和指向变量的指针变量
3. 数组的指针何指向数组的指针变量
4. 字符串的指针和指向字符串的指针变量
5. 函数的指针和指向函数的指针变量
6. 返回指针值的函数
7. 指针数组和指向指针的指针
8. 有关指针的数据类型和指针运算的小结
第十一章 结构体与共用体(理论4学时/实践5学时)
(一)教学目标
1. 掌握结构体类型的概念和定义方法以及结构体变量的定义和引用。
2. 掌握指向结构体变量的指针变量的概念和应用,掌握链表的概念和应用。
3. 共用体的概念和应用。
(二)重点、难点
重点:结构体变量的定义和引用
难点:结构体变量与指针
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. 概述
2. 定义结构体类型变量的方法
3. 结构体变量的引用
4. 结构体变量的初始化
5. 结构体数组
6. 指向结构体类型数据的指针
7. 用指针处理链表
8. 共用体
9. 枚举类型
10. 用typedef定义类型
第十二章 文件(理论3学时/实践3学时)
(一)教学目标 1. 掌握文件和文件指针的概念和文件的定义方法。
2. 了解文件的基本操作方法。
(二)重点、难点
重点:文件的打开、关闭、读写
难点:文件的打开、关闭、读写
(三)教学方法
以课堂讲授为主,辅之以课内上机实验。
(四)教学内容
1. C文件概述
2. 文件类型指针
3. 文件的打开与关闭
4. 文件的读写
5. 文件的定位
6. 出错的检测
7. 文件输入输出小结
四、考核形式及成绩评定
(一)考核形式:期末考试为闭卷考试,考试范围和要求应符合本教学大纲对各章教学内容的基本要求。
(二)成绩评定:课程考核由平时作业及听课情况和期末考试成绩两部分组成,分别占课程总成绩的30%和70%。
五、教材与参考书
教 材:谭浩强.《C程序设计(第三版)》.北京:清华大学出版社,2005.7
参考书:李保椿.《C语言学与练》.北京:清华大学出版社,2002
六、课程学时分配表(黑体小四号)
序号 教学内容(章、节或篇名) 学时分配 作业、考查 理论 实践
1 C语言概述 3 2
2 程序的灵魂--算法 3 1
3 数据类型、运算符与表达式 3 3
4 最简单的C程序设计 3 3
5 选择结构程序设计 3 3
6 循环控制 5 5
7 数组 6 6
8 函数 6 6
9 预处理命令 1 1
10 指针 5 5
11 结构体与共用体 4 5
12 位运算 0 2
13 文件 3 3