齐齐哈尔大学教案 2019一2020学年第二学期 课程名称: C语言程序设计 课程性质: 通识教育必修课 学期学时: 64 授课对象: 电子191-2 任课教师: 耿 职称: 副教授 学院(部、中心): 计算机与控制工程学院 院属系(部、中心、教研 室): 计算基础教学与实验中心 教研室: 程序设计教研室 齐齐哈尔大学教务处制 总学时 64 本学期学时 64 课堂 授课班 电子191-2 授课时间(地点) 周三3.4节(15教504) 级 周五3、4节(15教409) 通过本课程的学习,使学生对用计算机解决科学问题有一个深入的认识和理解:学习中要掌握℃语 言的基本语法、程序设计的基本思想和基本方法以及具有调试程序的能力;并通过案例教学培养学生分 析问题和解决问题的思维能力,使学生能够运用C语言程序解决本专业中的一些具体问题,进而培养学 生的分析问题和解决问题的能力。具体目标要求如下: (1)能力目标: 具备编写一般程序的能力: 具备阅读分析程序的能力: 且备调试程序的能力: 具备编写较为简单的管理系统的能力。 (2)知识目标: 掌握Microsoft VC++2010的集成开发环境使用: 课程学期教学目标 掌握C语言的基本框架; 掌握C语言的基本数据类型及其应用 掌握顺序结构、分支结构、循环结构及应用: 掌握数组及函数的使用方法: 掌握指针的使用方法: 掌握结构体的使用方法: 掌握文件的使用方法。 (3)素质目标: 提出问题、分析问题并解决问题的能力 独立思考的能力: 获取新知识、新技能、新方法的能力; 良好的自主学习能力, 课程讲授总体设计 由于C语言程序设计是一门实践性较强的课程,对大一新生来说比较难于理解,因此,充分利用网 络教学平台的辅助作用,采用混合式教学模式,也就是将传统的讲授模式转变为基于MOOC技术、翻转 课堂理念的在线学习和课堂面授相结合的教学模式。依托网络课程平台,结合QQ群、微信群实现在线
齐齐哈尔大学教案 2019 — 2020 学年第 二 学期 课 程 名 称: C语言程序设计 课 程 性 质: 通识教育必修课 学 期 学 时: 64 授 课 对 象: 电子191-2 任 课 教 师: 耿蕊 职 称: 副教授 学院(部、中心): 计算机与控制工程学院 院属系(部、中心、教研 室): 计算基础教学与实验中心 教 研 室: 程序设计教研室 齐齐哈尔大学教务处制 总学时 64 本学期学时 64 课堂1 授课班 级 电子191-2 授课时间(地点) 周三3、4节(15教504) 周五3、4节(15教409) 课程学期 教学目标 通过本课程的学习,使学生对用计算机解决科学问题有一个深入的认识和理解;学习中要掌握C语 言的基本语法、程序设计的基本思想和基本方法以及具有调试程序的能力;并通过案例教学培养学生分 析问题和解决问题的思维能力,使学生能够运用C语言程序解决本专业中的一些具体问题,进而培养学 生的分析问题和解决问题的能力。具体目标要求如下: (1)能力目标: 具备编写一般程序的能力; 具备阅读分析程序的能力; 具备调试程序的能力; 具备编写较为简单的管理系统的能力。 (2)知识目标: 掌握Microsoft VC++2010的集成开发环境使用; 掌握C语言的基本框架; 掌握C语言的基本数据类型及其应用; 掌握顺序结构、分支结构、循环结构及应用; 掌握数组及函数的使用方法; 掌握指针的使用方法; 掌握结构体的使用方法; 掌握文件的使用方法。 (3)素质目标: 提出问题、分析问题并解决问题的能力; 独立思考的能力; 获取新知识、新技能、新方法的能力; 良好的自主学习能力。 课程讲授 总体设计 由于C语言程序设计是一门实践性较强的课程,对大一新生来说比较难于理解,因此,充分利用网 络教学平台的辅助作用,采用混合式教学模式,也就是将传统的讲授模式转变为基于MOOC技术、翻转 课堂理念的"在线学习和课堂面授"相结合的教学模式。依托网络课程平台,结合QQ群、微信群实现在线
及相关资料的学习,课兰上教师主要进行重、难点的 布置学生进 步尝试创 应用性任务,将课堂内容延展。课程的实施分为学生课前学习,教师课前 准备、课堂学习、课外拓展几个阶段,课程的全程多方式考核贯穿其间。 口(2)教师课前准备 错题 课堂学习是教师与学生共同参与整个互动教学过程,要注重发挥教师的引导、启发、监督的主导作 知识以教师计解为主 案例教学实施:根据教学内容学生可以以个人和小组为单位完成,教师在其间指导,简单问题小组 (④课外拓 学生利用拓展资源,扩展学习内容;自愿参与项目案例的训练与设计:申报创新项目活动:参加课 外的竞赛,从而实现对课程内容综合应用,达到创新能力培养的目的。 救学内容构成 学时分配 课次 章节名称 课堂1 第1章概述 2 流符和水表达式 124单精度浮点型与%格式符 课效实装:图形、菜单输出及程序查给 3 2 实费平均及查错实训 4 2 教学内容构成 学时分配 教学周次分布 (第1-16周) 课次 章节名称 课堂1 提高实训:交换两个变量的值并输出 6
学习,学生在课前完成教师预先录制的微课视频及相关资料的学习,课堂上教师主要进行重、难点的讲 授、解惑及问题的讨论,如果时间允许,可以组织学生尝试创新性、应用性任务,也可以在课堂教学后 布置学生进一步尝试创新性、应用性任务,将课堂内容延展。课程的实施分为学生课前学习、教师课前 准备、课堂学习、课外拓展几个阶段,课程的全程多方式考核贯穿其间。 (1)学生课前学习 采用任务单为导引,引导学生按什么样的顺序学习,使用QQ 提醒,强化学生学习意识,通过在线 讨论辅助学生解决学习中遇到的困难,利用在线测试激励学生进一步巩固所学的内容。 (2)教师课前准备 课前根据平台上学生在讨论区的疑问、学生学习教学材料情况、在线测试成绩的分析、归纳总结易 错题、设计课堂上的教学要点,微调课堂案例。 (3)课堂学习 课堂学习是教师与学生共同参与整个互动教学过程,要注重发挥教师的引导、启发、监督的主导作 用,充分体现学生作为主体的主动性、积极性与创造性。 课前学习总结:对于学生的疑问和易错问题,采用小组讨论、提问、教师讲解等方式解决,重难点 知识以教师讲解为主。 案例教学实施:根据教学内容学生可以以个人和小组为单位完成,教师在其间指导,简单问题小组 内解决,复杂问题教师指导,共性问题教师讲解;抽取小组同学进行展示介绍;其他同学进行评价。 总结与反思:教师或学生总结课堂内容;学生反思并提交自己的结果文档。 (4)课外拓展 学生利用拓展资源,扩展学习内容;自愿参与项目案例的训练与设计;申报创新项目活动;参加课 外的竞赛,从而实现对课程内容综合应用,达到创新能力培养的目的。 教学内容构成 学时 分配 教学周次分布 (第1-16周) 课次 章节名称 课堂1 1 第1章 概述 1.1 C语言简介 1.2 简单的C程序 1.2.1 printf函数 1.2.2 基本整型与%d格式符 1.2.3 加、减、乘、除运算符和算术表达式 课堂实践:简单的C程序 2 1 2 1.2.4 单精度浮点型与%f格式符 1.3 算法 1.3.1 算法概述 1.3.2 算法图示表示 课堂实践:图形、菜单输出及程序查错 2 1 3 第2章 顺序结构程序设计 2.1 常量、变量、标识符 2.2 scanf函数 课堂实践:求平均值及查错实训 2 2 4 2.3 数学函数 2.4 赋值、自增、自减运算符 课堂实践:验证自增、自减及赋值运算符 2 2 教学内容构成 学时 分配 教学周次分布 (第1-16周) 课次 章节名称 课堂1 5 学生实践: 1.输入小写字母转换成大写 2.各种数据类型的输入与输出 提高实训:交换两个变量的值并输出 2 3 6 第3章 选择结构程序设计 3.1 if语句 3.1.1 关系运算与单分支if语句 3.1.2 求余运算与双分支if语句 2 3
课堂实践:验证关系运算符的使用 3.13逻辑运算与多分支i语句 7 3.16程序举例 9 2.按输入运算符运算 2 ,输出奇偶性 提高实训:任意三个数降序排序 教学内容构成 学时分配 课次 章节名称 课堂1 0 第镜情结检程序设计 2 品实爱包0之间5的倍数及其和 4fr通向 课堂实践:素数及水仙花数 12 2 学生实践 的定义和引用 数 的初始 课实践: “维数组的应用 的和列用 2 8 教学内容构成 学时分配 教学周次分布 (第1-16周) 课次 章节名称 课堂
课堂实践:验证关系运算符的使用 7 3.1.3 逻辑运算与多分支if语句 3.1.4 if语句的嵌套 3.1.5 条件运算符与条件表达式 课堂实践:验证逻辑运算符的使用、查错实训 2 4 8 3.1.6 程序举例 3.2 switch 语句 课堂实践:分段函数 2 4 9 学生实践: 1.输出成绩等级 2.按输入运算符运算 3.输入两个数,由小到大输出 4.输入一个正整数,输出奇偶性 提高实训:任意三个数降序排序 2 5 教 学 内 容 构 成 学 时 分 配 教 学 周 次 分 布 ( 第 1 - 1 6 周 ) 课 次 章 节 名 称 课 堂 1 10 第4章 循环结构程序设计 4.1 while语句 4.2 do-while语句 查错实训:输入1-50之间5的倍数及其和 2 5 1 1 4.3 for语句 4.4 break语句 课堂实践:素数及水仙花数 2 6 12 4.5 循环嵌套 4.6 常用算法举例 课堂实践:常用算法 2 6 13 学生实践: 1.Fibonacci数列 2.图形问题(正三角形) 3.素数问题 查错实训:输出100-200之间不能被3整除数 提高实训:乘法口诀及完数问题 2 7 14 第5章 数组 5.1 一维数组 5.1.1 一维数组的定义和引用 5.1.2 一维数组的初始化 5.1.3 随机函数random和rand 5.1.4 一维数组的简单应用 课堂实践:一维数组的应用 2 7 15 5.2 二维数组 5.2.1 二维数组的定义和引用 5.2.2 二维数组的输出 5.2.3 符号常量 课堂实践:二维数组的应用 2 8 教 学 内 容 构 成 学 时 分 配 教 学 周 次 分 布 ( 第 1 - 1 6 周 ) 课 次 章 节 名 称 课 堂 1
5子字符型数据 ar和puchar函数 数算法举例 ” 从 学生实践: 上有数据入任意一个数 教学内容构成 学时分配 教学周次分布 (第1-16周) 课次 章节名称 课堂1 19 形 20 6.3.4函数的嵌套调用 民函离数的嵌套与递归 2 10 21 参 2 11 82 驶支量 2 1.成绩问圆 救学内容构成 学时分配 课次 章节名称 课堂1
16 5.3 字符型数据 5.3.1 字符常量 5.3.2 字符串常量 5.3.3 字符型变量 5.3.4 getchar和putchar函数 5.3.5 字符数组 5.3.6 字符串处理函数 课堂实践:字符数组应用 2 8 17 5.4 数组常用算法举例 1.一维数组逆序 2.字符串复制 3.字符串连接 4.按姓名排序 5.从字符串中删除数字 6.查找子串,输出位置 课堂实践:常用算法 2 9 18 学生实践: 1.Fibonacci数列 2.选择及冒泡排序 3.杨辉三角 4.字符串连接 5.城市排序 查错实训: 1.求考试成绩的平均分 2.大小写字母互换 提高实训: 1.有序数据中插入任意一个数 2.统计单词的个数 2 9 教 学 内 容 构 成 学 时 分 配 教 学 周 次 分 布 ( 第 1 - 1 6 周 ) 课 次 章 节 名 称 课 堂 1 19 第6章 函数 6.1 函数概述 6.2 函数的定义 6.3 函数的调用 6.3.1 实参和形参 6.3.2 函数的结束与返回 6.3.3 对被调函数的声明 课堂实践:函数的定义与调用 2 10 20 6.3.4 函数的嵌套调用 6.4 递归函数 课堂实践:函数的嵌套与递归 2 10 21 6.5 数组作为函数参数 6.5.1 数组元素做实参 6.5.2 数组名做函数的参数 课堂实践:数组作参数 2 1 1 22 6.6 变量的存储类别 6.6.1 变量的存储类别 6.6.2 全局变量和局部变量 学生实践: 1.求任意两个实数的和 2.最大公约数与最小公倍数 3.n! 4.冒泡排序 5.矩阵转置 查错实训: 1.求闰年问题 提高实训: 1.成绩问题 2 1 1 教 学 内 容 构 成 学 时 分 配 教 学 周 次 分 布 ( 第 1 - 1 6 周 ) 课 次 章 节 名 称 课 堂 1
第7章指针 1指针的地 1.2指针写 专量 3 量的定义 24 12 实线指针马数组 7.5指针与函数 2 课堂实我:指针的高级应用与预处理 教学内容构成 学时分配 教学周次分布 (第1-16周) 课次 章节名称 课堂1 学生实践 26 13 符串 亮出 第8章结构体、共用体和枚举类型数据 籍体变的定义 27 体变量的初始化 14 18 edef定义类型 2 尖结构体、共用体与枚举的应用 29 生素。蓝表的落本探作 2 15 教学内容构成 学时分配 教学周次分布 (第1-16周)
23 第7章 指针 7.1 指针的概念 7.1.1 变量与地址 7.1.2 指针与指针变量 7.1.3 &与*运算符 7.1.4 直接访问与间接访问 7.2 指针变量 7.2.1 指针变量的定义 7.2.2 指针变量的初始化 7.2.3 零指针与空类型指针 7.2.4 指针变量作为函数参数 课堂实践:指针应用 2 12 24 7.3 指针与数组 7.3.1 指向数组元素的指针变量 7.3.2 数组元素表示方法 7.3.3 数组名作函数参数 7.3.4 指针与二维数组 7.4 指针与字符串 7.4.1 字符串表示形式 7.4.2 字符串指针作函数参数 7.4.3 字符指针变量与字符数组 课堂实践:指针与数组 2 12 25 7.5 指针与函数 7.6 返回指值的函数 7.7 指针数组和多级指针 7.8 编译预处理 7.8.1 宏定义 7.8.2 文件包含 7.8.3 条件编译 课堂实践:指针的高级应用与预处理 2 13 教 学 内 容 构 成 学 时 分 配 教 学 周 次 分 布 ( 第 1 - 1 6 周 ) 课 次 章 节 名 称 课 堂 1 26 学生实践: 1.由小到大的顺序输出a和b 2.求数组元素的和 3.统计空格和非空格数量 4.输出下三角方阵 5.交换两个数 查错实训: 1.字符串存放及输出 2.输出数组元素 提高实训: 1.输入单词并排序 2 13 27 第8章 结构体、共用体和枚举类型数据 8.1 结构体 8.2 结构体变量的定义 8.3 结构体变量的引用 8.4 结构体变量的初始化 8.5 结构体数组 课堂实践:结构体的应用 2 14 28 8.6 结构体和指针 8.7 共用体 8.8 用typedef定义类型 8.10 枚举 课堂实践:结构体、共用体与枚举的应用 2 14 29 8.9 链表 课堂实践:链表的基本操作 2 15 教 学 内 容 构 成 学 时 分 配 教 学 周 次 分 布 ( 第 1 - 1 6 周 )