教学要求:掌握三种基本数据类型以及能在这些数据类型上进行的运算,掌握一些基本C语句的使用方法。第三章顺序程序设计(2学时)3.1语句概述3.2赋值语句3.3数据的输入输出3.4字符数据的输入输出3.5顺序结构程序设计举例教学要求:掌握顺序结构的程序设计方法,熟练掌握输入、输出,能进行简单的顺序程序设计。第四章选择结构程序设计(2学时)4.1关系运算符和关系表达式4.2逻辑运算符和逻辑表达式4.3if语句4.4switch语句4.5程序举例教学要求:掌握关系运算符和逻辑运算符的使用方法,熟练掌握两种选择结构,并能用其进行程序设计。第五章循环程序设计(4学时)5.1构成循环的几种结构5.2while循环(当型循环)5.3dowhile循环(直到型循环)5.4for循环5.5循环的嵌套5.6break和continue语句5.7程序举例教学要求:掌握三种循环控制结构,并能熟练运用三种结构进行循环结构的程序设计,能解决一些常用的问题。第六章数组(4学时)7.1一维数组7.2二维数组的定义和引用7.3字符数组教学要求:掌握一维数组和二维数组的定义和使用方法,用一维数组解决线性表中的增、删、改、查和排序,用二维数组解决矩阵的基本运算。第七章函数(4学时)7.1概述7.2函数定义的一般形式9
9 教学要求: 掌握三种基本数据类型以及能在这些数据类型上进行的运算,掌握一些基本 C 语句的使 用方法。 第三章顺序程序设计(2 学时) 3.1 语句概述 3.2 赋值语句 3.3 数据的输入输出 3.4 字符数据的输入输出 3.5 顺序结构程序设计举例 教学要求: 掌握顺序结构的程序设计方法,熟练掌握输入、输出,能进行简单的顺序程序设计。 第四章选择结构程序设计(2 学时) 4.1 关系运算符和关系表达式 4.2 逻辑运算符和逻辑表达式 4.3 if 语句 4.4 switch 语句 4.5 程序举例 教学要求: 掌握关系运算符和逻辑运算符的使用方法,熟练掌握两种选择结构,并能用其进行程序 设计。 第五章循环程序设计(4 学时) 5.1 构成循环的几种结构 5.2 while 循环(当型循环) 5.3 do~while 循环(直到型循环) 5.4 for 循环 5.5 循环的嵌套 5.6 break 和 continue 语句 5.7 程序举例 教学要求: 掌握三种循环控制结构,并能熟练运用三种结构进行循环结构的程序设计,能解决一些 常用的问题。 第六章数组(4 学时) 7.1 一维数组 7.2 二维数组的定义和引用 7.3 字符数组 教学要求: 掌握一维数组和二维数组的定义和使用方法,用一维数组解决线性表中的增、删、改、 查和排序,用二维数组解决矩阵的基本运算。 第七章函数(4 学时) 7.1 概述 7.2 函数定义的一般形式
7.3函数参数和函数值7.4函数的调用7.5函数的嵌套调用7.6函数的递归调用7.7数组作为函数参数教学要求:掌握函数的定义和使用,函数的形参与实参的结合方法,数组作为函数参数,用函数实现模块化编程。第八章指针(4学时)8.1指针的概念8.2变量的指针和指向变量的指针变量8.3数组与指针8.4字符串与指针8.5指针运算小结教学要求:掌握指针的定义,一维数组与指针的关系,二维数组与指针关系,指向函数的指针,返回指针值的函数,指向指针的指针等。本章是课程的重点内容之一。第九章结构体与共用体(6学时)9.1概述9.2定义结构体类型及变量9.3结构体变量的引用9.4结构体变量的初始化9.5结构体数组9.6指向结构体类型数据的指针9.7用指针处理链表9.8共用体9.9枚举类型9.10用typedef定义类型教学要求:掌握结构体和共用体。重点介绍结构体,略讲共用体。包括结构体类型的定义,结构变量的使用,结构体数组,用结构体定义链表,链表的建立、插入、删除、查找等操作。通过本章的学习,学生能熟练掌握链表的操作。第十章文件(4学时)10.1C文件概述10.2文件类型指针10.3文件的打开与关闭10.4文件的读写10.5文件的定位10.6文件小结基本要求教学要求:掌握用fgetc/fputc,fscanf/fprintf,fread/fwrite等对文件进行读写操作。10
10 7.3 函数参数和函数值 7.4 函数的调用 7.5 函数的嵌套调用 7.6 函数的递归调用 7.7 数组作为函数参数 教学要求: 掌握函数的定义和使用,函数的形参与实参的结合方法,数组作为函数参数,用函数实 现模块化编程。 第八章指针(4 学时) 8.1 指针的概念 8.2 变量的指针和指向变量的指针变量 8.3 数组与指针 8.4 字符串与指针 8.5 指针运算小结 教学要求: 掌握指针的定义,一维数组与指针的关系,二维数组与指针关系,指向函数的指针,返 回指针值的函数,指向指针的指针等。本章是课程的重点内容之一。 第九章结构体与共用体(6 学时) 9.1 概述 9.2 定义结构体类型及变量 9.3 结构体变量的引用 9.4 结构体变量的初始化 9.5 结构体数组 9.6 指向结构体类型数据的指针 9.7 用指针处理链表 9.8 共用体 9.9 枚举类型 9.10 用 typedef 定义类型 教学要求: 掌握结构体和共用体。重点介绍结构体,略讲共用体。包括结构体类型的定义,结构变 量的使用,结构体数组,用结构体定义链表,链表的建立、插入、删除、查找等操作。通过 本章的学习,学生能熟练掌握链表的操作。 第十章文件(4 学时) 10.1 C 文件概述 10.2 文件类型指针 10.3 文件的打开与关闭 10.4 文件的读写 10.5 文件的定位 10.6 文件小结基本要求 教学要求: 掌握用 fgetc/fputc, fscanf/fprintf, fread/fwrite 等对文件进行读写操作
第十一章面向对象技术概述(2学时)11.1面向对象技术的基本概念11.2面向对象技术的基本特征11.3C++对面向对象技术的支持教学要求:掌握面向对象的基本概念和程序设计思想,包括类、对象、属性、方法、封装、继承和多态等概念,使学生的编程思维由面向过程向面向对象的方法转变。第十二章类与对象(4学时)12.1类定义12.2对象定义12.3成员函数和this指针12.4结构、联合和类12.5构造函数和析构函数12.6类的友元教学要求:掌握类和对象的定义与声明方法,深刻理解类的封装性。第十三章继承与派生(4学时)13.1类的继承性设计13.2受保护成员和继承性13.3控制继承性和多继承13.4派生类13.5访问权限控制13.6派生类的构造函数和析构函数教学要求:掌握类的继承性,包括单继承和多继承。第十四章多态性(4学时)14.1多态的实现类型14.2虚函数14.3抽象类14.4运算符重载教学要求:掌握类的多态性,通过虚函数实现类的多态。第十五章模板(2学时)15.1模板的概念15.2函数模板与模板函数15.3类模板与模板类15.4STL简介教学要求:掌握模板的定义和使用方法,熟练掌握一些常用标准模板的使用。第十六章异常处理(2学时)11
11 第十一章面向对象技术概述(2 学时) 11.1 面向对象技术的基本概念 11.2 面向对象技术的基本特征 11.3 C++对面向对象技术的支持 教学要求: 掌握面向对象的基本概念和程序设计思想,包括类、对象、属性、方法、封装、继承和 多态等概念,使学生的编程思维由面向过程向面向对象的方法转变。 第十二章 类与对象(4 学时) 12.1 类定义 12.2 对象定义 12.3 成员函数和 this 指针 12.4 结构、联合和类 12.5 构造函数和析构函数 12.6 类的友元 教学要求: 掌握类和对象的定义与声明方法,深刻理解类的封装性。 第十三章 继承与派生(4 学时) 13.1 类的继承性设计 13.2 受保护成员和继承性 13.3 控制继承性和多继承 13.4 派生类 13.5 访问权限控制 13.6 派生类的构造函数和析构函数 教学要求: 掌握类的继承性,包括单继承和多继承。 第十四章 多态性(4 学时) 14.1 多态的实现类型 14.2 虚函数 14.3 抽象类 14.4 运算符重载 教学要求: 掌握类的多态性,通过虚函数实现类的多态。 第十五章 模板(2 学时) 15.1 模板的概念 15.2 函数模板与模板函数 15.3 类模板与模板类 15.4 STL 简介 教学要求: 掌握模板的定义和使用方法,熟练掌握一些常用标准模板的使用。 第十六章 异常处理(2 学时)
16.1异常处理的基本思想16.2异常处理的实现教学要求:掌握异常处理的意义和异常处理的方法。三、课程教学方法采用多种现代教学媒体,在机房进行面对面讲授,课下采用BB平台进行辅助教学,课余时间通过QQ群进行答疑。重视师生互动,倡导理论与实践相结合、课内与课外学习相结合,尤其要加强实践教学环节以落实对学生实践能力的培养。四、课程教学评价平时成绩占30%分,期末考试占70%。平时成绩由出勤、作业、实验、随堂测验、BB平台测试等部分组成。期末考试为闭卷笔试。六、课程学习资源(一)主要参考书目[1]】C程序设计,谭浩强,清华大学出版社,2010[2]】C++程序设计教程,钱能,清华大学出版社,2009。(二)其它学习资源BB教学平台七、课程学习建议(一)注重理论课程学习由于本课程第1学期开设,所以建议学生尽快调整学习方法,适应大学期间大容量的教学方式。(二)加强实践学习本课程是一门实践性比较强的课程,学生要多编写代码,除了实践课环节外,要在课余时间利用图书馆提供的电脑或自己的电脑进行编程,逐步提高代码的编写和调试能力,培养编程思想,从而学会用计算机语言来解决一些实际问题。12
12 16.1 异常处理的基本思想 16.2 异常处理的实现 教学要求: 掌握异常处理的意义和异常处理的方法。 三、课程教学方法 采用多种现代教学媒体,在机房进行面对面讲授,课下采用 BB 平台进行辅助教学,课 余时间通过 QQ 群进行答疑。重视师生互动,倡导理论与实践相结合、课内与课外学习相结 合,尤其要加强实践教学环节以落实对学生实践能力的培养。 四、课程教学评价 平时成绩占 30%分,期末考试占 70%。平时成绩由出勤、作业、实验、随堂测验、BB 平台测试等部分组成。期末考试为闭卷笔试。 六、课程学习资源 (一)主要参考书目 [1] C 程序设计,谭浩强,清华大学出版社,2010。 [2] C++程序设计教程,钱能,清华大学出版社,2009。 (二)其它学习资源 BB 教学平台 七、课程学习建议 (一)注重理论课程学习 由于本课程第 1 学期开设,所以建议学生尽快调整学习方法,适应大学期间大容量的教 学方式。 (二)加强实践学习 本课程是一门实践性比较强的课程,学生要多编写代码,除了实践课环节外,要在课余 时间利用图书馆提供的电脑或自己的电脑进行编程,逐步提高代码的编写和调试能力,培养 编程思想,从而学会用计算机语言来解决一些实际问题
《离散数学》教学大纲课程类别:学科基础课程课程编码:1151712005304课程英文名:DiscreteMathematics预修课程:线性代数总学时数:54建议修读学期:2一、课程性质、目的和要求《离散数学》是现代数学的一个重要分支,是计算机科学中基础理论的核心课程。它不仅为计算机专业的专业理论课诸如:数据结构、操作系统、编译理论、数据库、算法分析、逻辑设计、计算机系统结构、容错诊断、形式语言与自动机、人工智能和机器定理证明等课程提供必要的理论基础,而目为学生令后从事计算机科学各方面的工作提供重要的工具通过本课程的学习,使学生能够接受现代数学关于离散结构的观点,从系统结构研究出发研究事物间的有关属性,同时要应用数形结合方法,使事物论证简洁直观,并培养学生具有这种论证能力。同时通过描述方法和密思维方法的训练,使学生具有良好的抽象思维和逻辑思维能力,具有严格证明推理的能力,运用自如的解题技巧,使学生具有独立学习和工作的能力。二、教学内容、要点和课时安排第一章命题逻辑(10学时)第一节命题及其表示法一、命题的概念二、命题的分类及表示第二节命题公式一、5个基本逻辑联结词二、命题公式的概念三、真值表第三节命题演算的等价式与蕴含式一、等价公式的概念※二、基本等价公式※三、蕴含式的概念及性质四、基本蕴含式第四节范式一、合取范式与析取范式二、极小项与极大项三、主合取范式与主析取范式第五节推理理论一、判定有效结论的三种方法13
13 《离散数学》教学大纲 课程类别:学科基础课程 课程编码:1151712005304 课程英文名:Discrete Mathematics 预修课程:线性代数 总学时数:54 建议修读学期:2 一、课程性质、目的和要求 《离散数学》是现代数学的一个重要分支,是计算机科学中基础理论的核心课程。它不 仅为计算机专业的专业理论课诸如:数据结构、操作系统、编译理论、数据库、算法分析、 逻辑设计、计算机系统结构、容错诊断、形式语言与自动机、人工智能和机器定理证明等课 程提供必要的理论基础,而且为学生今后从事计算机科学各方面的工作提供重要的工具。 通过本课程的学习,使学生能够接受现代数学关于离散结构的观点,从系统结构研究出 发研究事物间的有关属性,同时要应用数形结合方法,使事物论证简洁直观,并培养学生具 有这种论证能力。同时通过描述方法和缜密思维方法的训练,使学生具有良好的抽象思维和 逻辑思维能力,具有严格证明推理的能力,运用自如的解题技巧,使学生具有独立学习和工 作的能力。 二、教学内容、要点和课时安排 第一章命题逻辑(10 学时) 第一节 命题及其表示法 一、命题的概念 二、命题的分类及表示 第二节 命题公式 一、5 个基本逻辑联结词 二、命题公式的概念 三、真值表 第三节 命题演算的等价式与蕴含式 一、等价公式的概念※ 二、基本等价公式※ 三、蕴含式的概念及性质 四、基本蕴含式 第四节 范式 一、合取范式与析取范式 二、极小项与极大项 三、主合取范式与主析取范式 第五节 推理理论 一、判定有效结论的三种方法