0807011502C语言程序设计通信方向.docx
《0807011502C语言程序设计通信方向.docx》由会员分享,可在线阅读,更多相关《0807011502C语言程序设计通信方向.docx(16页珍藏版)》请在冰点文库上搜索。
0807011502C语言程序设计通信方向
《C语言程序设计》课程教学大纲
一、课程基本信息
课程中文名称:
C语言程序设计
课程代码:
0807011502
学分与学时:
3.5学分74学时(其中理论教学3学分64学时;实践教学0.5学分10学时)
课程性质:
必修
授课对象:
电子信息工程通信方向
二、课程教学目标与任务
1.课程任务:
C程序设计是电子信息工程专业的学科专业基础课,是在《大学IT》的基础上开设的一门课程,通过本课程的学习,使学生掌握C程序的全部语法知识和程序设计的基本方法,能够比较熟练地使用C语言编写程序,培养出扎实的软件开发基本技能,并养成良好的编程风格,为进一步学习后续课程和将来从事应用计算奠定良好的基础。
2.课程目标:
根据技能培养的基本要求。
本大纲强调知识的层次性,例题习题选用要既实用又丰富,强调编程技能的培养。
通过这门课程的学习,应使学生掌握以下内容:
1)使学生掌握程序及程序设计的基本概念。
2)使学生掌握结构化程序设计的基本方法。
3)使学生掌握C语言的基本语法、基本概念和基础知识。
4)通过训练使学生能读懂较为复杂的C语言源程序。
5)通过训练使学生具备基本的C程序设计的能力。
6)通过实践环节使学生掌握上机调试程序的基本方法。
7)使学生掌握程序设计的基本原理,提高学生综合程序设计的能力。
3.教学方法:
教学方法采用多种教学方法相结合的方式,除了使学生掌握学科知识外,还加强学生动手能力与主动学习能力。
1)传统教学手段和多媒体教学手段相结合课堂讲授模式,合理分配多媒体课件所用的教学时间。
2)在课堂教学安排上,做到精讲教学内容和学生课外自学、阅读相结合,课堂讨论和讨论后的讲评相结合。
3)通过上机操作实验,使学生熟悉编译环境并掌握实际动手编程与调试的能力,为将来从事应用计算奠定良好的基础。
三、学时安排
课程内容与学时分配表
章节
内容
理论学时
实验(实训、上机等)学时
备注
第一章
C语言概述
2
第二章
算法
4
第三章
数据类型、运算符与表达式
6
第四章
最简单的c程序设计—顺序程序设计
4
2
24人/组
第五章
选择结构设计
4
1
24人/组
第六章
循环控制
6
1
24人/组
第七章
数组
8
2
24人/组
第八章
函数
6
第九章
预处理命令
2
第十章
指针
12
2
24人/组
第十一章
结构体与共用体
5
2
24人/组
第十二章
位运算
3
第十三章
文件
2
合计
64
10
四、课程教学内容与基本要求
第一章C语言概述
教学目的:
了解C语言的发展历史和主要特点,对简单C程序有一个初步的认识,了解C程序的上机步骤。
基本要求:
了解
重点与难点:
重点:
C语言的特点与编程环境
难点:
C语言的编程环境
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节C语言出现的历史背景
第二节C语言的特点
第三节简单的C程序介绍
第四节C程序的上机步骤
第二章程序的灵魂——算法
教学目的:
掌握算法的概念及特性,学习使用并掌握算法的常用表示方法:
流程图;了解结构化程序设计的原则与方法。
基本要求:
掌握
重点与难点:
重点:
自然语言表示算法及流程图(传统流程图及N-S流程图)表示算法
难点:
流程图(传统流程图及N-S流程图)表示算法
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节算法的概念
第二节简单算法举例
第三节算法的特性
第四节怎样表示一个算法
第五节结构化程序设计
第三章数据类型、运算符与表达式
教学目的:
了解并掌握C的基本数据类型、常量与变量的定义与使用方法,能够正确理解和使用各类基本运算符,正确书写和使用各类表达式。
基本要求:
掌握
重点与难点:
重点:
基本数据类型;变量定义和赋值;运算符与表达式
难点:
自定义的数据类型;算符优先级
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节掌握C的数据类型:
基本数据类型;自定义的数据类型
第二节掌握常量和变量:
符号常量与一般常量;变量的定义和赋值
第三节掌握各类型数据的混合运算
第四节掌握运算符与表达式:
算术运算符;关系运算符与逻辑运算符;表达式的执行顺序
第四章最简单的c程序设计—顺序程序设计
教学目的:
了解程序的三种基本结构,能够设计简单的输入/输出,会利用赋值语句和输入/输出语句设计简单的顺序结构程序。
基本要求:
掌握
重点与难点:
重点:
输入输出函数;顺序结构C程序的编写
难点:
输入输出函数;顺序结构C程序的编写
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节C语句概述
第二节赋值语句
第三节数据输入输出的概念及在C语言中的实现
第四节字符数据的输入输出
第五节格式输入与输出
第六节顺序结构程序设计举例
第五章选择结构程序设计
教学目的:
掌握逻辑值、能够根据具体要求正确书写关系表达式和逻辑表达式,掌握运用if语句或switch语句编写简单的分支结构程序。
基本要求:
掌握
重点与难点:
重点:
if语句;switch语句;选择结构的C程序的编写
难点:
选择结构的C程序的编写
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节关系运算符和关系表达式
第二节逻辑运算符和逻辑表达式
第三节if语句
第四节switch语句
第五节选择结构C程序的编写
第六章循环控制
教学目的:
能够正确地理解循环的概念、正确地理解和描述循环控制表达式;掌握while语句,do-while语句,for语句的使用;掌握循环嵌套的运用;能够正确地区分和应用break和continue语句;掌握利用循环语句实现累加、连乘、枚举的基本方法。
基本要求:
掌握
重点与难点:
重点:
goto语句及构成的循环;while语句、do-while语句和for语句三种循环语句的使用及区别;break和continue的应用和区别;编写循环结构的程序
难点:
break和continue;循环嵌套及循环结构C程序的编写
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节概述
第二节goto语句及构成的循环
第三节while语句
第四节do-while语句
第五节for语句
第六节循环的嵌套和几种循环的比较
第七节break和continue语句
第七章数组
教学目的:
掌握数组的定义和数组元素的引用方法;了解数组的存储结构;掌握数组的初始化方法;掌握一维和二维数组的基本操作和基本算法;了解字符数组的存储结构,掌握字符串的输入/输出,掌握对字符串进行处理的基本函数和对字符串进行处理的基本算法。
基本要求:
掌握
重点与难点:
重点:
数组的定义和初始化;数组的基本操作;字符数组
难点:
数组的基本操作;二维数组的使用
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节一维数组的定义和使用
第二节二维数组的定义和使用
第八章函数
教学目的:
掌握函数的定义、调用和说明的一般方法;掌握C程序中函数的定义和调用规则;正确把握主调函数与被调函数的实参和形参之间的数据传递规则;掌握函数的嵌套调用、递归调用;了解局部变量和全局变量、动态存储变量和静态存储变量、内部函数和外部函数之间的差别并能够在编程中正确使用。
基本要求:
掌握
重点与难点:
重点:
函数的定义和调用;函数的参数传递;局部变量与全局变量
难点:
函数的调用(嵌套、递归);函数的参数传递;变量的作用域
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节概述
第二节函数定义的一般形式
第三节函数参数和函数的值
第四节函数的调用
第五节函数的嵌套调用
第六节函数的递归调用
第七节数组作为函数参数
第八节局部变量和全局变量
第九节变量的存储类别
第十节内部函数和外部函数
第九章预处理命令
教学目的:
对编译预处理有基本的了解,能够正确地进行宏定义,掌握条件编译的方法。
基本要求:
理解
重点与难点:
重点:
宏定义;条件编译
难点:
带参数的宏定义;条件编译
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节宏定义
第二节“文件包含”处理
第三节条件编译
第十章指针
教学目的:
正确理解指针变量和地址的概念,掌握指针变量的赋值、运算,以及通过指针引用变量的方法;理解数组名与地址值之间的关系,掌握通过指针引用数组元素的方法。
基本要求:
掌握
重点与难点:
重点:
指针变量的引用;数组的指针和指向数组的指针变量;字符串的指针和指向字符串的指针变量;返回指针值的函数;指针数组;有关指针的数据类型和指针运算。
难点:
地址和指针的概念;指针变量的引用;返回指针值的函数;指针数组
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节指针概念。
第二节变量的指针和指向变量的指针变量
第三节数组的指针和指向数组的指针变量
第四节字符串的指针和指向字符串的指针变量
第五节函数的指针和指向函数的指针变量
第六节返回指针值的函数、指针数组和指向指针的指针
第十一章结构体和共用体
教学目的:
掌握结构体类型说明和结构体类型变量、数组、指针的定义方法,能够正确引用结构体成员;掌握给结构体变量、数组初始化的方法;理解和掌握利用指向本结构体的指针成员构成链表的基本算法。
了解共用体,理解共用体中各成员的存储结构,能正确引用各成员中的数据。
基本要求:
掌握
重点与难点:
重点:
结构体;共同体;枚举类型;typedef定义类型;指针处理链表
难点:
指针处理链表
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节定义结构体类型变量、结构体变量的引用和初始化
第二节结构体数组、指向结构体类型数据的指针
第三节指针处理链表、共用体、枚举类型
第四节用typedef定义类型
第十二章位运算
教学目的:
了解几种位运算符的优先级和结合性;了解位运算符的简单使用;了解位段的概念和使用。
基本要求:
了解
重点与难点:
重点:
几种位运算符的简单使用
难点:
几种位运算符的使用
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节运算符和位运算
第二节位运算举例
第三节位段
第十三章文件
教学目的:
了解文件的概念;了解文件类型指针的定义和含义;掌握文件操作的相关标准函数;了解文件定位的操作及相关的标准函数;了解出错检测函数的作用。
基本要求:
了解
重点与难点:
重点:
库函数的使用;文件的概念;文件的类型;文件读写操作
难点:
文件的定位和出错的检测
教学方法:
结合多媒体的课堂讲授
主要内容:
第一节文件类型指针
第二节文件的打开和关闭
第三节文件的读写、文件的定位、出错的检测
五、课程教学方式与考核方式
1.教学方式:
以课堂讲授为主,辅以实践教学、课后作业。
2.考核方式:
闭卷考试(平时成绩20%,实验成绩20%,期末试卷成绩60%)。
六、参考教材及教学参考资料
参考教材:
谭浩强.C程序设计(第三版).北京:
清华大学出版社,2005.
参考资料:
[1]谭浩强.C语言设计题解与上机指导.北京:
清华大学出版社,2005.
[2]霍顿著,杨浩译.C语言入门经典(第4版).北京:
人民邮电出版社,2008.
七、实验教学内容与要求
一、实验教学目的与基本要求
《C语言程序设计》是一门实践性较强的课程,学生必须通过一定数量的上机编写和调试程序的训练,才能进一步巩固和加深对课程基本内容的理解。
二、实验内容与基本要求
1、实验项目一览
序号
实验项目名称
学时
实验类型
实验
类别
1
简单C程序的上机、调试简单顺序结构程序
2
验证型
必做
2
调试选择结构调试和循环结构程序程序
2
设计型
必做
3
一维数组的应用、二维数组和字符数组的应用
2
设计型
必做
4
指针的应用
2
综合型
必做
5
结构体与共用体
2
综合型
必做
合计
10
2、实验内容及要求
实验一:
简单C程序上机、调试简单顺序结构程序
一、实验目的和要求:
通过一个简单C程序的上机,熟悉一个具体的C开发环境,基本了解和学会源程序的输入、编辑、编译、修改、运行等上机环节。
学会顺序程序设计的思想;进一步熟悉VC集成编译环境的使用,达到熟练使用的目的;熟练掌握各种数据类型的常用输入输出格式,并学会使用输入输出函数;学会使用表达式。
二、仪器设备:
计算机,VC6.0开发环境
三、教学方法:
讲解演示
四、实验内容提要:
1.学习VC开发环境。
2.编写简单程序,了解和学会源程序的输入、编辑、编译、修改、运行等上机。
3.数据类型的输入输出格式
4.输入输出函数
5.表达式
6.顺序结构程序设计
实验二:
调试选择结构和循环结构程序
一、实验目的和要求:
了解C语言的关系运算和逻辑运算;学会使用if语句和switch语句;熟练掌握选择结构程序设计方法,学会使用while、do-while、for语句;熟练掌握循环结构程序设计方法;掌握选择结构与循环结构的嵌套。
二、仪器设备:
计算机,VC6.0开发环境
三、教学方法:
讲解演示
四、实验内容提要:
1.关系运算和逻辑运算
2.if语句和switch语句
3.while、do-while
4.for语句
5.循环结构程序设计方法
6.选择结构与循环结构的嵌套
实验三:
一维数组的应用、二维数组和字符数组的应用
一、实验目的和要求:
掌握一维数组和二维数组的定义、赋值和初始化的方法;掌握字符数组的使用;熟练掌握与数组相关的各种算法。
二、仪器设备:
计算机,VC6.0开发环境
三、教学方法:
讲解演示
四、实验内容提要:
1.一维数组和二维数组的定义、赋值和初始化
2.字符数组
3.数组相关的各种算法
实验四:
指针的应用
一、实验目的和要求:
掌握C语言指针变量的定义、声明和赋值;学会使用指针变量的程序设计;掌握指针作为函数参数的用法;学习指针的数组及指向函数的指针的用法
二、仪器设备:
计算机,VC6.0开发环境
三、教学方法:
讲解演示
四、实验内容提要:
1.C语言指针变量的定义、声明和赋值
2.指针与数组的关系
3.指针作为函数参数
4.指针的数组
5.指向函数的指针
实验五:
结构体与共用体
一、实验目的和要求:
掌握结构体类型变量的定义和使用;掌握结构体类型数组的概念和应用;掌握链表的概念,初步学会对链表进行操作;掌握共用体的概念与使用。
二、仪器设备:
计算机,VC6.0开发环境
三、教学方法:
讲解演示
四、实验内容提要:
1.构体类型变量的定义和使用
2.结构体类型数组
3.链表
4.共用体的使用
三、参考教材及教学参考资料
谭浩强.C语言设计题解与上机指导.北京:
清华大学出版社,2005.
四、实验成绩评定办法
实验课成绩由预习报告成绩、实验报告成绩、实验结果成绩三部分组成。