1、程序设计基础课程教学大纲一、课程基本信息课程名称(中文)程序设计基础课程名称(英文)Fundamentals of Programming课程类别学科基础课课程性质2必修授课语言3中文授课学期第1学期学分4课程学时及分配总学时讲课实验线上课外6448161664适用专业计算机类教材C语言程序设计教程第2版,李含光、郑关胜;清华大学出版社授课学院计算机软件学院先修课程无后续课程C+程序设计,数据结构,Java, Python课程简介课程基本定位:程序设计基础是计算机专业一门重要的基础课。它既奠定程 序设计的基础,又是其他专业课程的程序设计工具,C语言是当前使用最普 遍和通用的计算机编程语言,是学
2、习计算机其它编程语言(如C+、java、 python)的基础。课程通过对C语言的语法规那么、数据类型、数据运算、语 句、函数、数组、指针和结构体的学习,较好地训练学生利用计算机解决问 题的逻辑思维能力以及编程思路和技巧,使学生具有较强的利用C语言编写 程序的能力,为培养学生有较强软件开发能力打下良好基础。核心学习结果:学生掌握C语言的语法、编写程序、调试程序主要教学方法:案例教学(任务驱动)、直观演示教学(实践环节)、讲授和 讨论相结合、练习法(激发学生编程兴趣)、参观教学(观摩学习效果好的 老师)大纲更新时间2020.8二、课程目标序号课程目标(参考培养目标、毕业要求、 课程定位)支撑毕业
3、要求指标点达成途径1. 1具备较扎实的数学、自然科学知识, 系统掌握计算机领域的工程基础和 专业知识,了解计算机知识,能够将1.2具备扎实的计算机工程 基础知识,了解通过计算机 解决狂杂工程问题的基本学会C语言的基 本理论和语法基 础各类知识用于解决计算机领域复杂 工程问题。方法,并遵循复杂系统开发 的工程化基本要求;2. 1能够应用数学、自然科学和工程科学 的基本原理,识别、表达、并通过文 献研究分析计算机科学与技术及相 关领域内的复杂工程问题,以获得有 效结论。2.1应用数学、自然科学和 工程科学的基本原理,针对 一个系统或者过程进行抽 象、分析与识别,并进行问 题推理、求解和验证;能搞编
4、写较复杂 问题的程序3. 1能够针对计算机领域内的复杂工程 问题,选择与使用恰当的技术、软硬 件及系统资源、先进研发工具和信息 技术工具,包括对复杂工程问题的预 测与模拟,并能够理解其局限性。3.1在计算机领域复杂工程 问题的建模、模拟或解决过 程中,能够使用恰当的技 术、软硬件及系统资源和研 发工具,提高解决复杂工程 问题的能力和效率;能根据指定的方 法完成程序三、理论教学内容章 标 题教学内容学时思政融入点预期学习成果教学方式(讲授、专 题研讨、案 例、实验、实地调研 等)课程目标第章C语言概述2从C语言的发 展历史引入人 生开展不完全 是一帆风顺了解C语言的 开展,掌握C语 言程序的基本
5、 结构,学会开发 环境的安装和 使用讲授、专题 研讨、案例、 演示目标1.11 .C语言的开展历 史2 . C语言程序的结 构3 .C语言程序的特 点4 .C语言程序的开 发方法5 .C语言程序开发 环境使用及上机调 试第数据类型、运算符 和表达式4从数据类型的C语言数据类型讲授、专题目标章1 .问题引导2 .常量与变量3 .整型数据4 .浮点型数据5 .字符型数据6 .运算符和表达式7 .表达式求值分类浅析个人 只是社会的一 个组成局部的本质,运算符 的使用,混合运 算的数据转换 方法,学会表达 式求值研讨、案例1.1第章算法和控制语句10每种语句的语 句格式要求就 好比规章制度 和法律一样
6、, 必须认真遵 守,否那么就会 犯错学会常用的基 本算法,掌握 if语句的基本 结构以及if 语句的嵌套、 switch语句的 结构、循环语句 的基本结构及 其嵌套、break 语 句 和 continue 的应 用,能编写较复 杂程序;讲授、专题 研讨、案例、 演示目标2.1目标3.11 .问题引导2 . C语言的标准输 入和输出3 .条件语句4 .多分支语句5 .循环语句6 .转移语句7 .综合应用第 四 章函数6从函数的调用 引入人的行为(参数)对社 会的影响(函 数值),培养团 队意识学会函数的定 义,函数返回值 的大小如何求 得和类型,函数 的调用方法和 参数传递方法, 函数的递归调
7、 用的过程,变量 作用域,学会用 函数的观点编 写程序;讲授、专题 研讨、案例、 演示目标2.1目标3.11 .问题引导2 .函数概述3 .函数的声明和定 义4 .函数的参数和返 回值5 .函数的调用6 .局部变量和全局 变量7 .变量的存储类型8 .外部函数和内部 函数9 .综合应用第数组8从数组的本质讲授、专题目标五 章1 .问题引导2 .一维数组及其应 用3 .二维数组及其应 用4 .字符数组及其应 用5 .多维数组6 .变长数组7 .数组综合应用举 例引入要处理好 与周围的人之 间的关系,社 会才能和谐相 处和更好地发 展数组定义的方 法,数组元素的 引用,字符串处 理,数组元素和 数
8、组名作为函 数参数,能够应 用数组进行程 序的设计的典 型算法;研讨、案例、 演示2.1目标3.1第 六 章指针1 .指针与指针变量2 .指针变量的定义 与引用3 .指针运算符与指 针表达式4 .指针与数组5 .指针数组6 .指针的地址分配7 .指向指针的指针8 .指向函数的指针 变量9 . main函数的参数8告诉我们如何 透过事物地现 象看本质,培 养吃苦耐劳地 工作、学习和 生活作风指针变量的定 义和应用,指针 变量作为函数 参数,指向字符 串的指针的定 义和应用,指针 与数组的关系, 指针的应用;讲授、专题 研讨、案例、 演示目标2.1目标3.1第七预编译命令1 .概述2 .带参宏定义
9、3 . include 命令4 .条件编译1宏定义的概念 与方法,文件包 含;讲授、专题 研讨、案例目标1.1第八结构体与共用体1 .问题引导2 .结构体的声明和 结构体变量定义3 .结构体数组和结 构体指针4 .结构体与函数5 .链表及其应用6 .共用体7如何理解求同 存异,如何凝 聚各种社会正 能量,为国家 服务结构体类型和 变量的定义方 法,结构体类型 变量的引用,指 向结构体类型 数据的指针,结 构体数组的定 义和数组元素 的引用,链表结讲授、专题 研讨、案例、 演示目标2.1目标3.17 .枚举类型和自定 义类型8 .类型定义符 typedef9 .结构体的综合应 用点的概念和链 表
10、的基本操作;文件系统文件类型指针 的定义和含义,目标第1.文件和流的概念对信息资源的文件操作的相讲授、专题1.1目九2.文件的使用2认识,提高安关函数;学会用研讨、案例、标2.1章3.文件系统应用举 例全意识文件来输入数 据和保存运行 结果演示目标3.1四、实践(实验或实习)教学I编 号实验或 实习项 目名称教学内容学 时实验或实 习类型2思政融入点学生学习预期 成果课程目标1VS VC+ 和 Dev-C+ 开发环 境使用将一个有错误的程 序改正并能正确运行1验证性如何区分 是非熟悉开发环 境,如何调试 程序目标1.12数据类 型、运算 符和表 达式输入给定的关于数 据类型、运算符、 表达式的
11、程序。在C 语言集成开发环境 中编译运行。根据 得到的结果总结运 算符的特点以及表 达式的计算方法。1验证性培养如何 遵纪守法理解常用运行 符的功能、优 先级和结合 性。掌握表达 式的求值规那么目标1.13格式化 输入输 出函数 的使用输入给定的关于格 式化输入/输出程 序。在C语言集成 开发环境中编译运 行,并观察得到的 结果。1验证性只有养成 好习惯,才 能有好结果掌握printfO进 行格式化输出 和scanf()进行 格式化输入的 方法。目标1.14分支结 构程序 设计编写判断三角形类 型的程序。编写将 学生成绩转化为等1设计性正确选择 人生目标掌握if语句和 if else语句的 用
12、法。掌握目标2.1目标3.1级的程序switch语句的 用法。5循环结 构程序 设计编写数位别离的程 序。编写判断素数 的程序。编写输出 杨辉三角的程序2设计性在人的 生中会有 很多精彩 的生活等 着我们掌握要基本的 算法,能用循 环语句实现这 些基本的算 法,并能编写 较复杂问题的 C语言程序目标2.1目标3.16函数及 其应用用函数的观点编写 求一元二次方程的 根的程序2设计性人的行为 (参数)对 社会的影 响(函数 值),培养 团队意识理解模块化思 想,用函数的 观点实现程序 的模块化目标2.1目标3.17数组及 其应用编写用冒泡排序对 多个数进行排序的 程序。编写矩阵运 算的程序以及二
13、维 数组存储方式的程 序2综合性处理好与 周围的人 之间的关 系,社会才 能和谐相 处和更好 地开展用数组实现基 本的算法以及 数组作为函数 参数目标2.1目标3.18指针及 其应用用指针实现多个数 的排序程序。编写 指针处理字符串的 程序2设计性透过事物 地现象看 本质,培养 吃苦耐劳 地工作、学 习和生活 作风指针的含义, 指针和数组的 关系以及指针 作为函数参数目标2.1目标3.19结构体 及其应 用具有学生学号、姓 名、性别、课程成 绩的不同数据类型 数据处理的程序。 对学生信息按成绩 进行排序2综合性凝聚各种 的社会正 能量,为国 家服务结构体的含 义,结构体数 组的应用,链 表的基
14、本操作目标2.1目标3.110文件及其应用将30个学生的学 号、姓名及考试成 绩保存在文本文件 中。按成绩从高到 低的顺序进行排 序,并将排序结果2综合性对信息资 源的认识, 提高平安 意识文件操作函 数,数据的长 久保存方法目标1.1目标2.1目标3.1以文本方式存入文 件中五、在线教学编 号教学内容学时思政融入点学生学习预期成果课程目标1在学校在线测评(0J)系 统完成输入/输出4题,并 正确提交2良好的学习习惯会有 好的学习效果掌握在OJ中printf()、 scanf()以及其他输入输 出函数的使用方法目标1.12在学校在线测评系统上完 成10-12题程序控制语句 (分支、循环结构),
15、并正 确提交4在人的一生中会有很 多精彩的生活等着我 们,但好的生活得靠 我们不断努力掌握要基本的算法,能 用条件和循环语句实 现这些基本的算法,并 能编写较复杂问题的C 语言程序目标1.1目标2.1目标3.13用函数的观点在OJ上完 成4题,并正确提交2人的行为(参数)对 社会的影响(函数 值),培养团队意识理解模块化思想,用函 数的观点实现程序的 模块化目标1.1目标2.1目标3.14在OJ上完整编写8-10题 数组和字符串题目,并正 确提交4处理好与周围的人之 间的关系,社会才能 和谐相处和更好地发 展用数组实现基本的算 法以及数组作为函数 参数目标1.1目标2.1目标3.15在OJ上编
16、写10-12题基本 算法及其扩展题目,并正 确提交2透过事物地现象看木 质,培养吃苦耐劳地 工作、学习和生活作 风掌握一定的算法知识, 能用C语言编写较复 杂的算法程序目标1.1目标2.1目标3.16在OJ上完成结构体相关 的4-6题,并正确提交2凝聚各种的社会正能 量,为国家服务结构体的含义,结构体 数组的应用,链表的基 本操作目标1.1目标2.1目标3.1六、课程评价(一)考核内容、考核方式与课程目标对应关系课程目标考核内容考核方式及占比()成绩(%)平时 表现课程 作业在线 作业课程 实验课程 考试目标1.16%4%4%2%24%40%目标2.12%3%3%4%18%30%目标3.12%
17、3%3%4%18%30%合计10%10%10%10%60%100%(-)考核方式评分标准1.评分标准总体说明:(1)课堂表现:针对程序结构、函数、数组、指针、结构体这五章,在课堂上完成3-5 次作业和课堂点名,根据完成情况占10% (3次点名不到者,此项分数为0)。(2)在6上完成至少40道题目,占10%,否那么不能参加期末考试。(3)总评=平时作业(10%) +在线教学作业(10%) +课堂表现(10%) +实验(10%) +期末考试(60%)2.评分标准分项说明(1)课程作业评分标准课程目标评分标准90-100 (优)80-89 (良)70-79 (中)60-69 (及格)0-59(不及格
18、)目标1. 1:能在作业相 同中完成每 章节基础题能在作业相 同中完成大 多数章节的 基础题能在作业 相同中完 成70%章节 基础题能在作业相 同中完成 60%章节基 础题不能完成 任何章节 的基础题目标2. 1 :在作业系统 中完成每章 节编程题在作业系统 中完成80% 每章节编程 题在作业系 统中完成 70%每章节 编程题在作业系统 中完成60% 每章节编程 题在作业系 统中不能 完成任何 章节编程 题目标3.1:在作业系统 中完成每章 节程序填空 题和程序改 错题在作业系统 中完成80% 章节程序填 空题和程序 改错题在作业系 统中完成 70%章节程 序填空题 和程序改 错题在作业系统
19、中完成60% 章节程序填 空题和程序 改错题在作业系 统中不能 完成任何 章节程序 填空题和 程序改错 题(2)课程考试评分标准课程目标评分标准90-100 (优)80-89 (良)70-79 (中)60-69 (及格)0-59(不及格)目标1. 1:完成基础题 36题以上完成基础题32-35 题完成基础题28-31题完成基础题24-27 题完成基础 题24题以下目标2. 1:完成2道编 程题完成1道编 程题,另一完成1道编 程题,另一完成1道编 程题不能编写 程序(3)课程实验评分标准道题有局部 数据不正确道题编译 正确目标3.1:完成程序填 空题和程序 改错题完成程序填 空题和程序 改错题
20、中的 一遒,另一 题完成大部 分完成程序 填空题和 程序改错 题中的一 道,另一题 完成主要 局部完成程序填 空题和程序 改错题中的 一道不能完成 任何一道 题目课程目标评分标准90-100 (优)80-89 (良)70-79 (中)60-69 (及格)0-59(不及格)目标1.1:圆满完成实 验内容较好得完成 实验内容能够完成多 数实验内容能完成主 要实验内 容旷课或不 能完成实 验内容目标2.1:实验报告有 自己的见解实验报告见 解一般没有自己的 见解实验报告 不完整不交实验 报告目标3.1:很好地撰写 实验报告较好地撰写 实验报告撰写实验报 告撰写实验 报告一般不交实验 报告五、参考书目及学习资料1.谭浩强C程序设计第5版,清华大学出版社,2017年8月2Jeri R.Hanly Elliot B.KoffmanC语言详解方波,潘蓉,郑海红译,人民邮电出版社,2007 年11月.明日科技语言经典编程282例,清华大学出版社,2012年1月3 .明日科技C语言函数参考手册,清华大学出版社,2012年1月.苏小红,王宇颖,孙志岗C语言程序设计,高等教育出版社,2012年8月4 .李文新,郭炜,余华山程序设计导引既在线实践,清华大学出版社,2014年2月.李含光,郑关胜C语言程序设计教程学习指导,清华大学出版社,2018年6月