北京邮电大学世纪学院
《C语言程序设计》课程教学大纲课程编号:
课程名称:(中/英文)C语言程序设计/C programming language
课程类别:专业必修课
总学时: 64学时
总学分: 4学分
适用对象:大学本科各专业学生
课程性质:
《C语言程序设计》是多个专业的重要课程,在专业课程设置和课程体系中具有非常重要的地位。《C语言程序设计》是计算机系各专业的必修课程,也是我院非计算机专业开设的程序设计课程之一。
课程目标:
《C语言程序设计》作为计算机类的专业基础课,目的是使学生掌握程序设计的基本方法并逐步形成正确的程序设计思想,能够熟练地使用C语言进行程序设计并具备调试程序的能力,为后继课程及其他程序设计课程的学习和应用打下基础。对于非计算机专业来说,该课程有实际应用价值,为工程技术人员用计算机解决实际问题提供了方法,是后续理论和实践教学的基础和重要工具,同时也是计算机等级考试所统一要求的课程之一。
先修后续课程:
先修课程为《计算机导论》(或《计算机应用基础》);
其后续课程为《数据结构》。
课程内容:
第一章 C语言概述
【目的要求】
1.了解C语言的背景
2.掌握C语言程序的结构
3.领会C语言程序设计的风格
【重点与难点】
本章的重点是C程序结构。
【主要内容及学时分配】
理论教学内容(2学时):
1.C语言的历史背景
2.C语言的特点
3.C语言源程序的结构
实践教学内容与安排(0学时)
【测验、期中考试环节安排】
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
第二章 数据类型、运算符与表达式
【目的要求】
1. 了解基本类型及其常量的表示法
2. 掌握变量的定义及初始化方法
3. 掌握运算符与表达式的概念
4. 领会C语言的自动类型转换和强制类型转、左值和赋值的概念
【重点与难点】
本章的重点是常用数据类型、常用运算符、数学公式转化为C语言表达式的基本能力。
【主要内容及学时分配】
理论教学内容(2学时):
1. 常量与变量
2. 整型数据
3. 实型数据
4. 字符型数据
5. 变量赋初值
6. 各类数据之间的混合运算
7. 算述运算符与算术表达式
8. 赋值运算符与赋值表达式
9. 逗号运算符与逗号表达式
实践教学内容与安排(2学时)
序号
实验名称
实验学时
软件要求
实验1
TC 实验环境的熟悉
2
Turbo C 2.0
【测验、期中考试环节安排】
本章内容占考试内容的10%。
【作业与思考】
课后题及老师出的相关题目
第三章 最简单的C程序设计
【目的要求】
1. 了解C语句的概念及种类
2. 掌握C语言常用的输入/出方式
【重点与难点】
本章的重点是C语句的种类、赋值语句、数据的输入输出及输入输出中常用的控制格式。
【主要内容及学时分配】
理论教学内容(2学时):
1. C语句概述
2. 赋值语句
3. 字符数据的输入与输出
4. 格式输入与输出
5. 顺序结构程序设计举例
实践教学内容与安排(2学时)
序号
实验名称
实验学时
软件要求
实验2
验证性实验
2
Turbo C 2.0
【测验、期中考试环节安排】
本章内容占考试内容的10%。
【作业与思考】
课后题及老师出的相关题目
第四章 选择结构程序设计
【目的要求】
1. 熟练掌握if…else的三种语法
2. 领会switch与break语句的作用
【重点与难点】
本章的重点是关系运算符与逻辑运算符及其组成的具有逻辑值的表达式、二条分支语句的格式及基本应用。
【主要内容及学时分配】
理论教学内容(4学时):
1. 关系运算符与关系表达式
2. 逻辑运算符与逻辑表达式
3. if语句
4. switch语句
实践教学内容与安排(2学时)
序号
实验名称
实验学时
内容提要
软件要求
实验3
选择结构的应用
2
选择结构的应用
Turbo C 2.0
【测验、期中考试环节安排】
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
第五章 循环控制
【目的要求】
1. 领会程序设计中构成循环的方法
2. 掌握for、while、do-while语句的用法
3. 了解break、continue在循环语句中的作用
【重点与难点】
本章的重点是C构成循环的四种方法,尤其是后三种方法、break与continue语句的基本作用。
【主要内容及学时分配】
理论教学内容(6学时):
1. goto语句构成循环
2. while语句
3. do-while语句
4. for语句
5. 循环的嵌套
6. break与continue语句
实践教学内容与安排(4学时)
序号
实验名称
实验学时
内容提要
软件要求
实验4
循环结构的应用
4
循环结构的应用
Turbo C 2.0
【测验、期中考试环节安排】
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
第六章 数组
【目的要求】
1. 了解一维数组、二维数组的基本概念
2. 掌握数组类型变量的定义与引用
3. 掌握数组元素的引用
【重点与难点】
本章的重点是一维数组、二维数组的定义与引用;字符数组的定义与引用、常用字符串处理函数及字符处理函数;数组的应用(习题课)
【主要内容及学时分配】
理论教学内容(4学时):
1. 一维数组的定义与引用
2. 二维数组的定义与引用
3. 字符数组
实践教学内容与安排(4学时)
序号
实验名称
实验学时
内容提要
软件要求
实验5
数组的应用
4
数组的应用
Turbo C 2.0
测验、期中考试环节安排:
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
第七章 函数
【目的要求】
1. 掌握函数的定义与调用
2. 掌握函数参数的传递方式
3. 领会变量存储类型的概念及各种存储类型变量的生存期和有效范围
4. 领会函数的嵌套调用与递归调用
5. 了解带参数的main函数
【重点与难点】
本章的重点是函数定义、函数调用、函数声明等基本基本概念;函数的嵌套调用与递归调用;数组作为函数的参数、变量的存储类别与作用域
【主要内容及学时分配】
理论教学内容(6学时):
1. 函数的定义
2. 函数的参数和函数的值
3. 函数的调用
4. 函数的嵌套调用
5. 函数的递归调用
6. 数组作为函数参数
7. 变量作用域
8. 变量存储类别
实践教学内容与安排(4学时)
序号
实验名称
实验学时
内容提要
软件要求
实验6
函数调用
4
函数的应用
Turbo C 2.0
【测验、期中考试环节安排】
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
第八章 指针
【目的要求】
1. 了解指针与地址的概念
2. 掌握指针变量的定义、初始化及指针的运算
3. 掌握指针与数组、指针数组、二级指针等知识
4. 了解指针与函数的概念
5. 掌握指针作为函数参数的应用
【重点与难点】
本章的重点是指针与地址的基本概念、指针与变量的关系;指针与数组;指针与字符串、指针数组与二级指针;指针的应用(习题课)
【主要内容及学时分配】
理论教学内容(6学时):
1. 指针与地址的概念
2. 变量的指针和指针变量的指针变量
3. 数组的指针与指向数组的指针变量
4. 字符串的指针与指向字符串的指针变量
5. 指针与函数
6. 指针数组
7. 二级指针
实践教学内容与安排(2学时)
序号
实验名称
实验学时
内容提要
软件要求
实验7
指针的应用
2
指针的应用
Turbo C 2.0
【测验、期中考试环节安排】
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
第九章 结构体与共用体
【目的要求】
1. 掌握结构体和共用体类型的说明、结构体和共用体变量的定义及初始化方法
2. 掌握结构体与共用体变量成员的引用
3. 领会存储动态分配和释放
4. 领会链表的基本概念和基本操作
5. 领会枚举类型变量的定义
6. 了解typedef的作用
【重点与难点】
本章的重点是结构体的基本概念、结构类型及变量的定义、结构数组;用指针处理链表;共用体及枚举类型的基本概念、typedef的基本概念
【主要内容及学时分配】
理论教学内容(2学时):
1. 结构体类型的说明及结构体类型变量的定义
2. 结构体变量的引用
3. 结构体变量的初始化
4. 结构体数组
5. 指针与结构体数组
6. 链表
7. 共用体
8. 枚举类型
9. typedef
实践教学内容与安排(2学时)
实验名称
实验学时
内容提要
软件要求
实验8
2
结构体变量的应用
Turbo C 2.0
【测验、期中考试环节安排】
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
第十章 文件
【目的要求】
1. 掌握标准设备输入/输出函数的使用
2. 掌握缓冲文件系统的使用
3. 了解预处理的概念及特点
4. 掌握宏的定义及使用
5. 领会文件包含的使用及效果
【重点与难点】
本章的重点是文件的基本概念;文件的打开、关闭、常用读写方法。
【主要内容及学时分配】
理论教学内容(2学时):
1. 文件类型指针
2. 文件的打开与关闭
3. 文件的读写
4. 宏定义
5. “文件包含”处理
【测验、期中考试环节安排】
本章内容占考试内容的5%。
【作业与思考】
课后题及老师出的相关题目
教学策略与方法建议:
教学方法上,采用启发、引导的教学方法,结合多媒体教学方式,提高学生学习兴趣。
课程考核与评价:
本门课程为考查课,平时成绩占最后总成绩的60%,期末考试占最后总成绩的40%,其中平时成绩包括平时作业(包括上机、实验等)、出勤率、期中考试及课堂表现;期中平时作业——主要考核学生课后复习及完成作业的认真态度;上机、实验——主要考核学生的动手能力和创新意识;期末考试——主要考核学生对重要知识掌握与理解的深入程度。下面具体安排一下期中和期末考试时间。
1.本课程拟定于第9周进行期中考试
2.期末考试由学校安排为准。
参考附录:
1、推荐教材与参考书:
《C程序设计》 夏涛 北京邮电大学出版社
2、参考文献:
谭浩强. 《C程序设计》, 第三版
Brian W.Kernighan, Dennis M.Ritchie. 《The C Programming Language》, 第二版