程序设计实践课程教学大纲

  • 格式:docx
  • 大小:22.75 KB
  • 文档页数:7

程序设计实践课程教学大纲

课程基本信息

课程代码:SE2501 课程名称(中/英):程序设计实践/ Programming Practice

学分:2 总学时:40 理论学时:16 实践学时:24

课程性质:必修 开课学期:2 适用专业:软件工程

先修课程:计算机导论、程序设计基础

开课单位:信息科学与工程学院 大纲版本:XX

制定(修订)人:XXX 审核人:XX 批准人:XX

制定(修订)时间:XX.5 审核时间:XX.6 批准时间:XX.6

一、课程简介

《程序设计实践》是专业基础课程,为《程序设计基础》之后续课程,其主要目的是让学生进 一步地对C语言基础知识,尤其是对数组、函数、指针、结构体、文件等内容进行深入的理解和掌 握,课程结合具体的应用实例,应用软件工程和结构化程序设计的基本思想,将基本数据结构、算 法、技巧进行综合,循序渐进地启发学生,直至完成综合的实例,同时,训练了学生实际分析问题 的能力、编程能力和培养学生良好的编程习惯。

二'课程目标

(一) 课程具体目标

1. 掌握c语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现;

2. 具有良好的表达能力,专业的描述方法,能与业界同行及社会公众进行准确、高效的沟通和 父流。

(二) 课程目标与专业毕业要求的关系

表1本课程对专业毕业要求及其指标点的支撑

课程目标 支撑的毕业要求 支撑的毕业要求指标点

毕业要求3.设计/开发解决方案能力:能够针对软 指标点3.3能够按照设计方

目标1 件工程领域的复杂工程问题设计解决方案,开发满 案要求进行计算机软硬件

足特定需求的软硬件系统或组件,并能够在设计/开 实现。

发环节中表达创新意识,考虑社会、健康、安全、 法律、文化及环境等因素。 目标2 毕业要求10.沟通与交流:具有沟通的能力、方法 和技巧,能够就软件工程领域复杂工程问题与业界 同行及社会公众进行有效沟通和交流,包括撰与报 告和设计文稿、陈述发言、清晰表达或回应指令, 并具备一定的国际视野,能够在跨文化背景下进行 沟通和交流。 指标点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. 基本要求

⑴进一步强化指针的应用,掌握二级指针、指针数组、指向函数的指针等基础知识;

(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语言基础知识,解决实际问题,培养分析、设计、测试与调试等能力。

3. 支撑的课程目标

本实验项目可以支撑“课程指标点1:掌握C语言相关的编程进阶知识,并能够按照设计方案 要求进行计算机软件实现''和“课程指标点2:具有良好的表达能力,专业的描述方法,能与业界同行 及社会公众进行准确、高效的沟通和交流〞。

本实验通过综合实验,引导学生依据所掌握的相关知识点,综合设计系统,达到课程目标的要 求。

四、教学方式、教学方法及课时安排

1. 教学方式

表2课程目标与教学环节

序号 课程目标 教学环节

讲授 作业 实验

1 掌握C语言相关的编程进阶知识,并能

够按照设计方案要求进行计算机软件实

现; ✓ ✓ ✓

2 具有良好的表达能力,专业的描述方 法,能与业界同行及社会公众进行准 确、高效的沟通和交流。 ✓ ✓ ✓

以课堂讲授为主,结合课堂讲授内容安排课内实验及课后作业,加深对理论教学内容的理解和 认识,培养工程实践能力。

2. 教学方法

本课程教学贯彻“以学生为主体、以教师为主导''的教学思想,采用教学的“互动、开放"的课堂形 式,具体以课堂教学为主,结合自学、课后作业和实验教学,采用启发式、问题式的教学方法,基于 项目的实际问题,提高学生解决复杂软件工程问题的能力,达到课程目标的要求。相关课程目标支 撑如下:

课堂教学主要程序设计有关的基本概念、基本理论以及基本分析方法,使同学们更好地熟悉C 语言的基本知识,提高学生对编程的兴趣、培养自主学习的意识、以及领会计算思维的内涵。课堂 教学尽量引入互动环节,通过问题导入教学,引导学生寻找解决方案,提高教学效果,达到“课程目 标1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机软件实现''的要求。

实验教学可以在理解理论知识的基础上,动手寻找答案,以培养学生的解决复杂软件工程问题 的能力,达到“课程目标1:掌握C语言相关的编程进阶知识,并能够按照设计方案要求进行计算机 软件实现''和“课程目标2:具有良好的表达能力,专业的描述方法,能与业界同行及社会公众进行准 确、高效的沟通和交流"的要求。