《高级程序设计语言C》教学大纲
课程中文名称:高级程序设计语言C
课程英文名称:Advanced Programming Language C
课程编号:16231402
学分:  3.5总学时:56理论学时:28上机学时:28
开课学期:2
适用专业:全校理工文类非计算机专业
先修课程:大学计算机基础
后续课程:城市水工程计算机应用
开课单位:计算中心
一、课程性质和教学目标
课程性质:本课程为全校理工文类非计算机专业的一门计算机程序设计语言课。本课程是使学生掌握传统的结构化程序设计的一般方法,以C语言为基础,培养学生严谨的程序设计思想、灵活的思维方式及较强的动手能力,培养学生的计算思维能力;在此基础上,让学生逐步掌握简单软件的设计和开发手段,为后续专业课程的学习打下扎实的理论和实践基础,因此,本课程是一门理论性和实践性均较强的课程。
教学目标:支撑毕业要求指标点5.2
本课程教学目的是介绍如何用C语言编写和调试结构化程序。通过本课程的学习,将为学生以后使用计算机解决本专业的科学计算问题奠定基础。要求学生掌握基本数据类型和常用算法,理解结构化程序设计编写程序的方法,应用C语言正确编写和调试程序,使用C 语言解决实际问题。
教学目标:
目标1:掌握数据结构的特点、存储方法和基本运算,
目标2:培养学生运用C(C++)语言正确编程及调试的能力,
目标3:运用数据结构解决简单的实际问题的能力。
课程教学目标与给排水科学与工程专业毕业要求的关系矩阵毕业要求指标教学目标达成途径考核方式
指标点:5.2掌握运用现代信息
技术及工具获取专业信息知识,并能对对工程问题建立模型进行模拟和预测,同时理解模型的适用范围与局限性目标1,2,
3
通过课堂讲授、课后答
疑、实验、上网查阅相
关资料和课程作业达到
采用题库上机考
试与平时考核将
结合的考核方式
二、课程教学内容及学时分配(含实践、自学、作业、讨论等的内容及要求)
1.第1章C语言概述
1.1教学内容与基本要求
1.1.1教学内容
C语言的特点,程序的编辑、编译、连接和运行的过程,C简单程序的构成。
1.1.2基本要求
1)了解C语言的特点,
2)熟悉程序的编辑、编译、连接和运行的过程,
3)掌握C简单程序的构成。
1.2教学重点与难点
重点:C程序的编辑、编译、连接和运行过程
难点:C程序的基本构成
1.3学时分配2学时
1.4教学方式:通过课堂讲授、课后答疑、上网查阅相关资料和课程作业来完成课程目标。
1.5支撑课程目标:目标1
2.第2章基本数据类型、运算符与表达式
2.1教学内容与基本要求
2.1.1教学内容
C语言的基本数据类型(整型、字符型、实型等基本数据类型的概念);各种类型的常量和变量的使用;不同类型数据间的混合运算规则,;算术运算符、赋值运算符及表达式的使用;逗号运算符、自增自减运算符和位运算符的使用。
2.1.2基本要求
1)掌握C语言的基本数据类型(整型、字符型、实型等基本数据类型的概念),
2)熟悉各种类型的常量和变量的使用,
3)掌握不同类型数据间的混合运算规则,熟练掌握算术运算符、赋值运算符及表达式的使用,4)了解
逗号运算符、自增自减运算符和位运算符的使用。
2.2教学重点与难点
重点:C语言的基本数据类型和运算符
难点:不同类型数据间的混合运算
2.3学时分配4学时
2.4实验:熟悉C编译环境、基本数据类型、运算符和表达式的使用
2.5教学方式:通过课堂讲授、课后答疑、实验、上网查阅相关资料和课程作业来完成课程目标。
2.6支撑课程目标:目标1,目标2
3.第3章C程序设计初步
3.1教学内容与基本要求
3.1.1教学内容
算法的基本概念和C语言程序的特点;结构化程序设计方法及其特点、格式化输入/输出函数的使用方法,能编写简单的顺序结构程序。
3.1.2基本要求
1)了解算法的基本概念和C语言程序的特点,
2)掌握结构化程序设计方法及其特点、格式化输入/输出函数的使用方法,能编写简单的顺序结构程序。
3.2教学重点与难点
重点:顺序结构的程序设计方法
难点:格式输入/输出函数的使用方法
3.3学时分配4学时
3.4实验:顺序结构程序设计
3.5教学方式:通过课堂讲授、课后答疑、上网查阅相关资料和课程作业来完成课程目标。
3.6支撑课程目标:目标1,2
4.第4章选择结构程序设计
4.1教学内容与基本要求
4.1.1教学内容
关系运算符和逻辑运算符的特点;运算符的优先级与结合性;if语句及switch语句进行简单的选择结构程序设计。
4.1.2基本要求
1)掌握关系运算符和逻辑运算符的特点,
2)熟悉每种运算符的优先级与结合性;
3)熟练掌握使用if语句及switch语句进行简单的选择结构程序设计。
4.2教学重点与难点
重点:选择结构的程序设计方法
难点:if语句的多重嵌套
4.3学时分配8学时
4.4实验:选择结构程序设计
4.5教学方式:通过课堂讲授、课后答疑、实验、上网查阅相关资料和课程作业来完成课程目标。
4.6支撑课程目标:目标1
5.第5章循环结构程序设计
5.1教学内容与基本要求
5.1.1教学内容
逗号运算符、自增自减运算符的使用;while语句、do while语句和for语句的结构与使用方法;常见的循环嵌套形式;break语句和continue语句的使用方法,能编写相应的程序。5.1.2基本要求
1)掌握逗号运算符、自增自减运算符的使用,
2)掌握while语句、do while语句和for语句的结构与使用方法,熟悉常见的循环嵌套形式,
3)掌握break语句和continue语句的使用方法,能编写相应的程序。
5.2教学重点与难点
重点:while语句、do while语句和for语句的结构与使用方法
难点:循环的多重嵌套及continue语句的使用方法
5.3学时分配8学时
5.4实验:循环结构程序设计
5.5教学方式:通过课堂讲授、课后答疑、实验、上网查阅相关资料和课程作业来完成课程目标。
5.6支撑课程目标:目标1,2
6.第6章数组
6.1教学内容与基本要求
6.1.1教学内容
数组的基本概念,一维数组和二维数组的定义和使用、字符数组的定义和应用;字符串的概念和常用的字符串处理函数,能分析、编写利用数组进行数据存储和处理的程序。6.1.2基本要求
1)掌握数组的基本概念,一维数组和二维数组的定义和使用、字符数组的定义和应用,2)熟悉字符串的概念和常用的字符串处理函数,能分析、编写利用数组进行数据存储和处理的程序。
6.2教学重点与难点
重点:一维数组、二维数组、字符数组的应用
难点:排序的算法和字符串的处理方法
6.3学时分配8学时
6.4实验:数组的应用
6.5教学方式:通过课堂讲授、课后答疑、实验、上网查阅相关资料和课程作业来完成课程
目标。
6.6支撑课程目标:目标1,2
7.第7章函数
7.1教学内容与基本要求
7.1.1教学内容
函数的定义、函数的声明、函数的调用;函数的形式参数和实际参数之间的传递方式;函数嵌套调用的一般过程及使用方法;函数递归调用的方法;数组名作为函数参数时的地址传递方式;局部变量与全局变量的概念及其使用特点;动态存储变量与静态存储变量的概念和含义;内部函数与外部函数的作用;编译预处理的概念;宏定义的使用方法;文件包含和条件编译的作用。
7.1.2基本要求
1)掌握函数的定义、函数的声明、函数的调用,熟悉函数的形式参数和实际参数之间的传递方式,
2)掌握函数嵌套调用的一般过程及使用方法,理解函数递归调用的方法,理解使用数组名作为函数参数时的地址传递方式,
3)熟悉局部变量与全局变量的概念及其使用特点,熟悉动态存储变量与静态存储变量的概念和含义,
4)了解内部函数与外部函数的作用,了解编译预处理的概念,掌握宏定义的使用方法,了解文件包含和条件编译的作用。
7.2教学重点与难点
重点:函数的定义和调用
难点:函数的嵌套调用和递归调用,静态局部变量的使用
7.3学时分配8学时
7.4实验:函数的应用
7.5教学方式:通过课堂讲授、课后答疑、上网查阅相关资料和课程作业来完成课程目标。
7.6支撑课程目标:目标1,2
8.第8章指针
8.1教学内容与基本要求
8.1.1教学内容
指针的概念和作用;指针变量的定义和使用方法;指向变量的指针、指向数组的指针、指向字符串的指针的区别和意义;指针数组的定义和应用。
8.1.2基本要求
1)理解指针的概念和作用,
2)掌握指针变量的定义和使用方法,熟悉指向变量的指针、指向数组的指针、指向字符串的指针的区别和意义,c编程步骤
3)了解指针数组的定义和应用。
8.2教学重点与难点
重点:指针变量的定义和使用
难点:指针的概念和使用
8.3学时分配4学时
8.4实验:指针的应用
8.5教学方式:通过课堂讲授、课后答疑、实验、上网查阅相关资料和课程作业来完成课程目标。
8.6支撑课程目标:目标1,2
9.第9章结构体
9.1教学内容与基本要求
9.1.1教学内容
结构体的概念、结构体类型的定义、结构体变量的定义和使用、结构体数组的定义和使用;指向结构体类型数据的指针的作用和使用方法;自定义类型的定义和使用。
9.1.2基本要求
1)掌握结构体的概念、结构体类型的定义、结构体变量的定义和使用、结构体数组的定义和使用,
2)了解指向结构体类型数据的指针的作用和使用方法,了解自定义类型的定义和使用。
9.2教学重点与难点
重点:结构体类型的定义,结构体数组的定义、赋值、引用
难点:结构体指针的定义、赋值、引用
9.3学时分配4学时
9.4实验:结构体的应用
9.5教学方式:通过课堂讲授、课后答疑、实验、上网查阅相关资料和课程作业来完成课程目标。
9.6支撑课程目标:目标1,2
10.第10章文件系统
10.1教学内容与基本要求
10.1.1教学内容
文件的概念;文件指针的作用和含义;文件指针的定义和引用;文件的打开和关闭方法以及文件的打开方式;文件操作相关读写函数的使用方法。
10.1.2基本要求
1)理解文件的概念,
2)了解文件指针的作用和含义,
3)掌握文件指针的定义和引用,掌握文件的打开和关闭方法以及文件的打开方式,掌握文件操作相关读写函数的使用方法。
10.2教学重点与难点
重点:文件操作相关读写函数的使用
难点:文件指针的定位
10.3学时分配6学时
10.4实验:文件的应用
10.5教学方式:通过课堂讲授、课后答疑、实验、上网查阅相关资料和课程作业来完成课程目标。
10.6支撑课程目标:目标2,3
三、教学方法
课程教学以课堂讲授为主,辅以多媒体教学,利用精品资源共享课网络教学资源实现课下学习互动,采用课程讲授,开始试验,布置作业等共同实施。
(一)课堂讲授
课程教学以课堂多媒体教学为主,通过学习,使学生掌握传统的结构化程序设计的一般方法,以C语言为基础,培养学生严谨的程序设计思想、灵活的思维方式及较强的动手能力,培养学生的计算思维能力;在此基础上,让学生逐步掌握简单软件的设计和开发手段,为后续专业课程的学习打下扎实的理论和实践基础。
(二)课堂实验