程序设计实践课程教学大纲
课 程 基 本 信 息 | |||||
课程代码: SE2501 | 课程名称(中/英): 程序设计实践 / Programming Practice | ||||
学 分:2 | 总学时:40 | 理论学时:16 | 实践学时:24 | ||
课程性质:必修 | 开课学期:2 | 适用专业:软件工程 | |||
先修课程:计算机导论、程序设计基础 | |||||
开课单位:信息科学与工程学院 | 大纲版本:XX | ||||
制定(修订)人:XXX | 审核人:XX | 批准人:XX | |||
制定(修订)时间:XX.5 | 审核时间:XX.6 | 批准时间:XX.6 | |||
一、课程简介
《程序设计实践》是专业基础课程,为《程序设计基础》之后续课程,其主要目的是让学生进一步地对C语言基础知识,尤其是对数组、函数、指针、结构体、文件等内容进行深入的理解和掌握,课程结合具体的应用实例,应用软件工程和结构化程序设计的基本思想,将基
本数据结构、算法、技巧进行综合,循序渐进地启发学生,直至完成综合的实例,同时,训练了学生实际分析问题的能力、编程能力和培养学生良好的编程习惯。
二、课程目标
(一)课程具体目标
1. 掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现;
2. 具有良好的表达能力,专业的描述方法,能与业界同行及社会公众进行准确、高效的沟通和交流。
(二)课程目标与专业毕业要求的关系
表1 本课程对专业毕业要求及其指标点的支撑
课程目标 | 支撑的毕业要求 | 支撑的毕业要求指标点 |
目标1 | 毕业要求3. 设计/开发解决方案能力:能够针对软件工程领域的复杂工程问题设计解决方案,开发满足特定需求的软硬件系统或组件,并能够在设计/开发环节中体现创新意识,考虑社会、健康、安全、法律、文化及环境等因素。 | 指标点3.3能够按照设计方案要求进行计算机软硬件实现。 |
目标2 | 毕业要求10. 沟通与交流:具有沟通的能力、方法和技巧,能够就软件工程领域复杂工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写报告和设计文稿、陈述发言、清晰表达或回应指令,并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。 | c语言指针实验总结 指标点10.2具有良好的表达能力,专业的描述方法,能与业界同行及社会公众进行准确、高效的沟通和交流。 |
(三)课程对解决复杂工程问题能力的培养
在课程理论知识讲授环节,注重培养学生程序设计实践能力与解决复杂工程问题的能力。在授课过程中引入与生活相关的实际案例,比如:学生信息管理系统、图书馆信息管理系统、简单的游戏设计等。针对这些复杂案例,将需求分析、概要设计、详细设计、编码、调试与测试整个程序开发过程贯彻始终,通过案例引导学生将复杂问题进行分解,运用工程开发的方法解决复杂工程问题。并通过适当的课后作业锻炼和检验学生解决复杂工程问题的能力。在实验教学环节,以培养学生解决复杂工程问题的能力为目标,围绕课程支撑的毕业要求指标点安排实验项目,设计实验内容,明确实验要求,指导实验实施,严格实验成果考核。在课程考核环节,根据课程支撑的课程目标选择合适的考核方式,考题设置应完全覆盖课程支撑的课程目标,考题设计应充分考虑学生解决问题所需知识和能力的考查,考题的难度和深度应能够体现复杂工程问题的特征。总之,本课程的教学通过在理论讲授、课后作业、课内实验、课程考核等环节充分贯彻培养学生解决复杂工程问题能力的理念和要求,实现本课程支撑课程目标的达成。
三、教学内容及基本要求
(一)理论教学
第1单元 C语言相关知识(6学时)
1.教学内容
(1)C语言课程内容综述:进一步理解函数、数组、指针、结构体等部分的知识;
(2)文件的操作;
(3)预处理指令和文件包含。
2.基本要求
(1)进一步强化C语言基本知识,综合应用C语言复杂数据类型、函数、指针等相关知识解决实际问题;
(2)进一步加强测试与调试的能力;
(3)掌握文件操作函数的使用方法;
(4)理解预处理指令和文件包含。
3.支撑的课程目标
本单元各知识点的讲授和学习,可以支撑“课程指标点 1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现”,培养学生综合应用C语言基础知识解决复杂问题的能力,强化测试与调试能力,在处理细节与矛盾的过程中学会思考,解决问题。
本单元教学通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣。通过课堂讨论及课后作业,培养学生依据老师提供的拓展知识和能力的渠道,建立自主学习的意识和习惯,达到课程目标的要求。
第2单元 C语言指针进阶(6学时)
1.教学内容
(1)二级指针、指针数组、指向函数的指针;
(2)链表的基本操作。
2.基本要求
(1)进一步强化指针的应用,掌握二级指针、指针数组、指向函数的指针等基础知识;
(2)掌握链表的基本操作;
(3)进一步加强测试与调试的能力。
3.支撑的课程目标
本单元各知识点的讲授和学习,可以支撑“课程指标点 1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现”,培养学生综合应用C语言基础知识解决复杂问题的能力,强化测试与调试能力,在处理细节与矛盾的过程中学会思考,解决问题。
本单元教学通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣。通过课堂讨论及课后作业,培养学生依据老师提供的拓展知识和能力的渠
道,建立自主学习的意识和习惯,达到课程目标的要求。
第3单元 案例模块化程序设计(4学时)
1.教学内容
(1)模块化程序设计思路;
(2)模块的划分方法;
(3)程序逻辑、流程图;
(4)案例。
2.基本要求
通过一个完整的案例,引导学生掌握程序设计过程,深刻体会C语言结构化、模块化特点,能够灵活运用C语言的相关知识完成任务。
3.支撑的课程目标
本单元各知识点的讲授和学习,可以支撑“课程指标点 1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现”和“课程指标点 2:具有良好的表达能力,专业的描述方法,能与业界同行及社会公众进行准确、高效的沟通和交流”,培养学生综合应用C语言基础知识解决复杂问题的能力,强化测试与调试能力,在处理细节与矛盾的过程中学会思考,解决问题。
本单元教学通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣。通过课堂讨论及课后作业,培养学生依据老师提供的拓展知识和能力的渠道,建立自主学习的意识和习惯,达到课程目标的要求。
(二)实验教学
实验项目1.文件程序设计(4学时)
1.实验内容
(1)掌握文件的基本概念;
(2)掌握文本文件的打开和关闭操作。
(3)掌握文本文件的顺序读、写方法。
2.基本要求
掌握文件的基本概念及其访问。
3.支撑的课程目标
本实验项目可以支撑“课程目标 1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现”。本实验通过问题启发式方法引导学生依据所掌握的相关知识点,强化对文件操作的练习和理解,加深相关知识点的理解,达到课程目标的要求。
实验项目2.指针进阶(4学时)
1.实验内容
(1)指针数组的基本应用和编程方法;
(2)单向链表的建立和基本操作。
2.基本要求
(1)理解指针数组的概念,掌握指针数组的基本应用和编程方法;
(2)掌握单向链表的概念和建立方法;
(3)掌握单向链表的基本操作。
3.支撑的课程目标
本实验项目可以支撑“课程目标 1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现”。本实验通过问题启发式方法引导学生依据所掌握的相关知识点,强化对指针数组和单链表的练习和理解,加深相关知识点的理解,达到课程目标的要求。
实验项目3.函数与程序结构(4学时)
1.实验内容
文件包含的操作及函数嵌套的使用。
2.基本要求
(1)了解结构化程序设计的基本思想;
(2)掌握使用工程组织多个程序文件的方法;
(3)掌握函数嵌套的使用方法;理解递归函数的编程方法。
3.支撑的课程目标
本实验项目可以支撑“课程目标 1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现”。本实验通过问题启发式方法引导学生依据所掌握的相关知识点,强化对文件包含的练习和理解,加深相关知识点的理解,达到课程目标的要求。
实验项目4.综合设计(12学时)
1.实验内容
综合应用C语言基础知识,设计一个完整的案例(以学生信息管理系统为例,或其他类似的管理系统)。
2.基本要求
综合应用C语言基础知识,解决实际问题,培养分析、设计、测试与调试等能力。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论