《高级语言程序设计(Ⅱ)》课程教学大纲
(The Advanced Language Programming)
课程编号:19031003
学 分:3.5
学 时:64 (其中:讲课学时: 40 上机学时:24 )
先修课程:《高级语言程序设计(Ⅰ)》
后续课程:面向对象程序设计(C++)
适用专业:网络工程、软件工程、物联网工程、数据科学与大数据技术
开课部门:计算机科学与信息工程学院
一、课程的性质与目标
本课程是计算机科学与信息工程学院学生的专业基础必修课,是《程序设计基础》的后续课程,课程主要内容包括:函数;指针;结构体;文件等知识。
《高级语言程序设计》以具有代表性的高级语言——C语言为主体,通过对C语言程序设计知识的深入学习,掌握阅读和分析程序的方法;掌握设计和调试程序的方法及技巧;初步掌握实用程序的开发与调试技术,初步掌握程序设计方法,养成良好的程序设计风格,为后续软件课程打下基础。
学习本课程要求学生掌握使用函数实现模块化处理并解决问题;掌握善于使用指针方法实现对数据的间接访问;掌握使用结构体处理多数据信息的方法,了解链表的概念及相关处理;了解对磁盘文件的输入输出方法。
拓展学生在计算机知识、信息系统设计、系统应用开发等方面的知识,培养学生自学能力、实践能力、创新思维能力、系统开发能力、职业基础能力、分析解决问题等能力。
二、课程的主要内容及基本要求
第一章 函数 ( 16 学时,包括6个学时上机实验 )
[知 识 点]
知识点1:函数的嵌套调用和递归调用
知识点2:数组作为函数参数
知识点3:变量的作用域及存储方式
知识点4:外部函数和内部函数
知识点5:预处理命令
知识点6:应用举例
知识点7:综合实例:学生成绩管理程序(六)
知识点8:常见程序错误及解决方法
[重 点]
函数的调用;函数间的数据传递。
[难 点]
函数递归调用;数组作函数参数时函数的定义和调用方法。
[基本要求]
目的1:熟练掌握函数的定义、函数调用的方式、数组作为函数参数的定义和调用、二维数组做函数参数的定义和调用。
目的2:掌握形式参数和实际参数以及函数间数据的传递、函数调用的一般形式、对被调用函数的声明和函数原型、函数的嵌套调用、函数的递归调用、局部变量和全局变量、动态存储方式和静态存储方式、内部函数和外部函数。
[实践与练习]
实验1 函数
根据教学计划适当选做课后习题2至4道。
第二章 指针 ( 16 学时,包括6个学时上机实验 )
[知 识 点]
知识点1:指针与数组
知识点2:指针与函数
知识点3:指向指针型数据的指针
知识点4:动态数组
知识点5:综合实例-学生成绩管理程序(七)
知识点6:常见程序错误及解决方法
[重 点]
指针与数组。
[难 点]
指针与函数;指针数组和内存的动态分配。
[基本要求]
目的1:熟练掌握变量的指针与指针变量的区别、指针变量的定义和引用及作为函数参数、数组元素的指针、通过指针引用一维和二维数组元素,用数组名作函数参数。
目的2:掌握字符指针作为函数参数、使用字符指针变量和字符数组的比较。
目的3:掌握用函数指针变量调用函数、用指向函数的指针作为函数参数、返回指针值的函数、指针数组、内存的动态分配。
[实践与练习]
实验 2 指针
根据教学计划适当选做课后习题2至4道。
第三章 结构体与其他构造类型 ( 16 学时,包括6个学时上机实验 )
[知 识 点]
知识点1:结构体类型和结构体变量
知识点2:结构体数组
知识点3:结构体指针用指针处理链表
知识点4:链表
知识点5:共用体类型
知识点6:枚举类型
知识点7:用typedef声明新类型
知识点8:应用举例
知识点9:综合实例-学生成绩管理程序(八)
知识点10:常见程序错误及解决方法
[重 点]
结构体类型与结构体变量;结构体数组。
[难 点]
结构体指针;用指针处理链表。
[基本要求]
目的1:熟练掌握结构体类型和结构体变量的定义、结构体数组的应用、指向结构体变量的指针、指向结构体数组的指针、用结构体变量和指向结构体的指针做函数参数。
目的2:掌握链表的定义、建立简单的静态链表和动态链表、输出链表。
目的3:了解共用体类型和共用体变量的定义、枚举类型和枚举类型的定义,掌握用typedef 可以声明新类型名。
[实践与练习]
实验3 结构体与其他构造类型
根据教学计划适当选做课后习题2至4道。
第四章 文件 ( 12 学时,包括4个学时上机实验 )
[知 识 点]
知识点1:文件的读写
知识点2:文件定位
知识点3:应用举例
知识点4:综合实例-学生成绩管理程序(九)
知识点5:常见程序错误及解决方法
[重 点]
文件结构指针;文件的打开与关闭;顺序读写数据文件;文件的定位。
[难 点]
顺序读写数据文件;随机读写数据文件。
[基本要求]
目的1:掌握文件的有关基本知识、用函数打开和关闭数据文件。
目的2:掌握顺序读写数据文件、随机读写数据文件。
[实践与练习]
实验4 文件
根据教学计划适当选做课后习题2至4道。
第五章 综合实例 ( 4 学时,包括2个学时上机实验 )
[知 识 点]
知识点1:较大程序的开发过程
知识点2:综合程序设计实例
知识点3:编写较大程序的注意事项
三、学时分配
章目 |
讲课 |
实验 |
上机 |
合计 |
函数 |
10 |
|
6 |
16 |
指针 |
10 |
|
6 |
16 |
结构体与其他构造类型 |
10 |
|
6 |
16 |
文件 |
8 |
|
4 |
12 |
综合实例 |
2 |
|
2 |
4 |
合计 |
40 |
|
24 |
64 |
四、考核模式与成绩评定办法
考核方式:考试
成绩评定: 期末考试60%,实验成绩30%,平时成绩10%
五、推荐教材和主要参考资料
推荐教材:
《C程序设计案例教程》,钟家民;清华大学出版社,2018年6月
主要参考资料:
1、《C程序设计(第四版)》,谭浩强;清华大学出版社,2010年6月
2、《C程序设计(第四版)学习辅导》,谭浩强;清华大学出版社,2010年6月
3、《C语言程序设计(第三版)》,苏小红;高等教育出版社,2015年7月
4、《C语言程序设计》,姬秀荔;清华大学出版社,2012年2月
5、《深入体验C语言项目开发)》,薛小龙;清华大学出版社,2011年7月
6、 http://acm.nyist.net/,南阳理工学院ACM在线评测系统
7、《机试考点 百签题解)》,郎六琪;吉林大学出版社,2012年4月
六、大纲说明
1、本课程实验见实验教学大纲;本课程采用多媒体课件授课。
2、本大纲在执行过程中可根据实际教学情况作适当调整。
撰写人:周晏 审定人:钟家民
批准人:侯贵法 执行时间: