附软件工程专业考试大纲

合集下载

软件工程基础综合考试大纲

软件工程基础综合考试大纲

885软件工程专业基础综合一、考查目标软件工程专业基础综合涵盖程序设计、数据结构等学科专业基础课程。

要求考生系统地掌握上述专业基础课程的概念、基本原理和方法,能够运用基本原理和基本方法分析和解决有关理论问题和实际问题。

二、考试形式和试卷结构试卷满分及考试时间本试卷满分为150分,考试时间为180分钟答题方式闭卷、笔试试卷内容结构程序设计75分数据结构75分试卷题型结构单项选择题20分程序填空题15分编程题50分简答题50分算法设计题15分三、考查范围程序设计部分1.考试内容⑴数据类型:常量、变量、数组、字符串、指针,变量的初始化、变量存储类型;⑵运算符与表达式:运算符的运算规则和优先级、表达式、类型转换;⑶程序的控制:程序的三种基本结构、语句、数据的输入输出;⑷函数:函数的定义、函数的调用、参数传递、带参数的主函数、函数的递归;⑸结构与联合:构造数据类型的概念、结构的定义与引用、联合的定义与引用、链表;⑹文件:文件的概念、文件指针、文件的打开、关闭及操作;2.考试要求⑴掌握C程序设计语言的基本语法。

⑵掌握常见的程序设计方法。

⑶掌握基本的数值、排序等算法,以及穷举、递推、递归等方法。

3.分值75分4.题型单项选择题10分程序填空题15分编程题50分数据结构部分1.考试内容⑴基本概念:数据结构,数据,数据元素,数据对象,抽象数据类型,算法,算法的时间复杂度和空间复杂度。

⑵线性表:线性表的逻辑结构和基本操作,顺序和链式存储结构,简单应用与实现。

⑶栈和队列:栈和队列的基本概念,存储结构,基本操作,简单应用与实现。

⑷数组和广义表:数组的定义及顺序存储结构,矩阵的压缩存储,数组的简单应用,广义表的定义与基本操作。

⑸树和二叉树:树的定义和基本操作,二叉树的概念和基本性质,二叉树的存储结构,遍历二叉树和线索二叉树,树和森林与二叉树的关系,哈夫曼树和哈夫曼编码,树的简单应用。

⑹图:图的基本概念,图的存储结构,图的遍历,图的应用,图的连通性,有向无环图及其应用,最短路径,关键路径。

附软件工程专业考试大纲

附软件工程专业考试大纲

《专业综合一》考试大纲《C语言程序设计》一、基本要求1. 熟悉Visual C++6.0 集成开发环境。

2. 掌握结构化程序设计的方法,具有良好的程序设计风格。

3. 掌握程序设计中简单的数据结构和算法并能阅读简单的程序。

4. 在Visual C++6. 0 集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力。

|二、考试内容(一)C语言程序的结构1. 程序的构成,main函数和其他函数。

2. 头文件、函数的开始和结束标志以及程序中的注释。

3. 源程序的书写格式。

4. 运行C程序的步骤与方法。

(二)数据类型及其运算1. C的数据类型分类,及其基本数据类型的定义方法。

2. C运算符的种类、运算优先级和结合性。

3. 不同类型数据间的转换与运算。

4. C表达式类型(赋值表达式、算术表达式、关系表达式、逻辑表达式、条件表达式)和求值规则。

(三)基本语句1. 表达式语句,复合语句。

2. 输入输出函数的调用,正确输入数据并正确设计输出格式。

(四)选择结构程序设计1•用if 语句实现选择结构。

2. 用switch语句实现多分支选择结构。

3. 选择结构的嵌套。

(五)循环结构程序设计1. for循环结构。

2. while 和do-while 循环结构。

3. continue 语句和break 语句。

4. 循环的嵌套。

(六)数组的定义和引用1. 一维数组和二维数组的定义、初始化和数组元素的引用。

2. 字符串与字符数组。

(七)函数1. 函数的定义方法。

2. 函数的类型和返回值。

3. 形式参数与实在参数,参数值的传递。

4. 函数的正确调用,嵌套调用,递归调用。

5. 局部变量和全局变量。

6. 变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。

(八)指针1. 地址与指针变量的概念,地址运算符与间址运算符。

2. 一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的定义。

2024北航软件工程考试大纲

2024北航软件工程考试大纲

2024北航软件工程考试大纲一、考试性质北航软件工程考试是为了选拔具有优秀软件工程素质和潜力的优秀人才而进行的全国性考试。

该考试由教育部主办,各省级教育考试院组织,北航负责命题和评卷。

二、考试目标本考试旨在全面考察考生的软件工程知识、技能和能力,包括但不限于以下方面:1.软件工程基本概念和原理2.软件开发过程和方法3.软件需求工程4.软件设计和建模5.软件测试和维护6.软件质量保证和项目管理7.现代软件工程实践和发展趋势三、考试内容和要求本考试包括两部分:基础知识和应用技能。

1.基础知识部分:考生应掌握软件工程的基本概念、原理和方法,了解软件开发的全过程,包括需求分析、设计、实现、测试和维护等阶段。

此外,考生还应了解软件的质量保证和项目管理相关知识,包括但不限于敏捷开发、CMMI、PMP等。

2.应用技能部分:考生应能够运用所学的软件工程知识和技能解决实际软件开发中的问题。

这包括但不限于需求获取和分析、设计建模、测试用例设计、缺陷跟踪和修复等。

考生还应具备基本的项目管理能力和团队协作精神。

四、考试形式和试卷结构1.考试形式:笔试,时长180分钟,满分100分。

2.试卷结构:试卷由选择题、填空题、简答题和应用题组成。

其中,选择题和填空题主要考察考生的基础知识,简答题和应用题主要考察考生的应用技能。

试卷难度比例为:基础题60%,中等难度题30%,难题10%。

3.试题难度:试题难度分为容易、中等和难三个等级。

容易题应让全体考生都能作答;中等难度题应让大部分考生能作答;难题应有一定的挑战性,但仍能通过分析和推理得出答案。

2024年专升本软件工程、计算机科学与技术《高级语言程序设计(C语言)》考试大纲

2024年专升本软件工程、计算机科学与技术《高级语言程序设计(C语言)》考试大纲

湖北工程学院2024年专升本《高级语言程序设计(C语言)》考试大纲一、基本要求:考生应按本大纲的要求,正确理解C语言的结构、语法与环境;C语言的基本概念、函数及其调用;各类语句的语法,语义和各种数据类型的使用特点;问题的分析、设计及C语言实现及调试方法,并得到充分的程序设计训练。

本大纲对内容的要求由低到高,对概念和理论分为“了解”和“理解”两个层次;对运算和程序分为“掌握”和“应用”两个层次。

二、考试方法和时间:考试方法为闭卷考试,考试时间为120分钟。

三、考试题型大致比例:无选择题、无判断题,其他题型不限。

满分:150分。

四、考试内容和要求:第1章程序设计和C语言考试内容:(1)什么是计算机程序;(2)什么是计算机语言;(3)C语言的发展及其特点;(4)C语言程序的结构;(5)运行C程序的步骤与方法;(6)程序设计的任务。

考试要求:(1)了解:C语言的发展历史及其特点;(2)掌握:运行C程序的步骤和方法;(3)应用:用C语言编写简单的屏幕输出程序第2章算法----程序的灵魂考试内容:(1)算法的概念;(2)算法的特性;(3)算法的几种表示方法;(4)结构化程序设计方法;考试要求:(1)了解:最基本的算法;(2)理解:结构化程序设计方法第3章最简单的C程序设计----顺序程序设计考试内容:(1)数据的表现形式及其运算;(2)运算符和表达式;(3)C语句;(4)数据的输入输出;考试要求:(1)掌握:几种基本数据类型的表示形式,以及定义于基本数据类型之上的各种运算(算术、赋值、关系、逻辑、条件、逗号等);(2)掌握:常量的意义及几种基本数据类型的常量的表示形式,符合常量的定义与使用,变量的定义及自定义标识符的规范;(3)掌握:混合运算的表达式中各种运算符的优先级及结合方向;(4)掌握:输入、输出函数的使用规范第4章选择结构程序设计考试内容:(1)选择结构和条件判断;(2)关系运算符和关系表达式,逻辑运算符和逻辑表达式,条件运算符和条件表达式;(3)if选择控制语句;(4)switch选择控制语句。

软件工程考试大纲

软件工程考试大纲

《软件工程》考试大纲一、考试说明考试对象:计算机科学与技术专业命题原则:(1)在教学大纲和考试大纲所规定的知识点范围内命题。

(2)试题的考察要求覆盖面广、区分度高。

(3)试题兼顾各个能力层次,难易程度和题量适当,按难易程度分为四个层次:容易占40%,较易占40%,较难占10%,难占10%。

试题题型:《软件工程》试题总分为100分,选择题占20分,简答题占20分,论述题占20分、设计题占40分。

选择题:给出有关软件工程概念、原理、方法的不完整叙述,要求考生从题后给出的四个选项中选择合适的一种答案,补充完整。

简答题:可包括重要概念的解释、数据流图的绘制。

论述题:可包括重要概念的解释、数据流图的绘制。

设计题:可包括绘流程图、写算法设计思想、定义相应数据结构、用高级语言书写程序。

二、考试范围重点考察学生对软件工程有关概念的理解以及软件工程有关的原理方法。

按照教学大纲的要求,具体考核要求分为掌握、理解和了解三个层次:掌握:要求学生能够全面、深入理解和熟练应用的内容,是重点考试内容。

理解:要求学生能够较好地理解所学内容,并且能够进行简单分析和判断。

了解:对要求了解的内容,在考试中占较小比例,不超过5%。

1、绪论[考核的知识点和要求]掌握:学习软件工程的意义,面向对象软件工程和传统软件工程的比较;各种软件开发模型的内容,不同开发模型的特点比较;理解:软件的定义、软件的分类,软件危机、软件工程学的范畴;软件过程中瀑布模型、快速原型模型、螺旋模型的特点。

3、软件需求分析[考核的知识点和要求]理解:可行性研究任务(目的)及涉及的内容,需求分析的任务,需求分析的方法及主要方法(面向数据流分析)的具体步骤,需求分析的任务、步骤。

掌握:数据流图(掌握顶层数据流图的绘制),细化DFD的原则,数据词典的定义及表述符号,其他分析工具。

4、软件设计概述[考核的知识点和要求]掌握:软件设计的任务、基本概念,模块化设计,设计文档,模块与构件,抽象与细化,信息隐藏;高内聚低耦合。

《软件工程专业基础综合(840)》考试大纲

《软件工程专业基础综合(840)》考试大纲

《软件工程专业基础综合(840)》考试大纲江西财经大学软件与通信工程学院第一部分《C程序设计》(占总分30%)参考书目:谭浩强,《C程序设计》(第3版),清华大学出版社2005年第2章数据类型、运算符与表达式【内容】1、C的数据类型2、常量和变量3、整型数据、实型数据、字符型数据4、变量赋初值5、各类数值型数据间的混合运算6、算术运算符和算术表达式7、赋值运算符和赋值表达式8、逗号运算符和逗号表达式【要求】1、掌握C语言的数据类型、常量与变量的概念,掌握标识符的命名规则2、掌握整型数据、实型数据和字符型数据的特点和使用3、掌握变量赋初值的方法4、掌握算术表达式、赋值表达式和逗号表达式的使用方法5、了解各类数值型数据间混合运算时类型转换的方法第3章最简单的C程序设计【内容】1、C语句概述2、程序的三种基本结构3、赋值语句4、数据输入输出的概念及在C语言中的实现5、字符数据的输入输出【要求】1、掌握C语言的分类、三种基本程序结构和赋值语句的使用方法2、掌握printf函数和scanf函数的格式和使用3、掌握字符数据的输入输出函数第4章逻辑运算和判断选取控制【内容】1、关系运算符和关系表达式2、逻辑运算符和逻辑表达式3、if语句和switch语句【要求】1、掌握关系运算符、关系表达式、逻辑运算符和逻辑表达式的使用2、掌握if语句和switch语句的格式和使用3、掌握条件运算符的格式和使用第5章循环控制【内容】1、while、do-while和for语句2、循环的嵌套3、break语句和continue语句【要求】1、掌握while、do-while和for语句的格式和使用2、掌握循环结构程序设计方法第6章数组【内容】1、一维数组的定义和引用2、二维数组的定义和引用3、字符数组、常用字符串处理函数【要求】1、掌握一维数组以及二维数组的定义和使用2、掌握字符串的使用和字符串函数的应用第7章函数【内容】1、函数定义的一般形式2、函数参数和函数的值3、函数的调用4、函数的嵌套调用5、变量的存储类别:自动变量、静态变量、外部变量、寄存器变量【要求】1、掌握函数定义的格式2、掌握函数的形式参数和实际参数以及函数调用时的参数传递3、掌握函数嵌套调用的方法4、掌握自动变量、静态变量、外部变量、寄存器变量的概念和作用域第8章预处理命令【内容】1、宏定义2、文件包含处理【要求】1、掌握宏定义和文件包含处理的使用第9章指针【内容】1、地址和指针的概念2、变量的指针和指向变量的指针变量3、数组的指针和指向数组的指针变量4、字符串的指针和指向字符串的指针变量【要求】1、了解地址和指针的概念2、掌握指针变量的定义及指向简单变量指针的使用方法第10章结构体和共同体【内容】1、结构体变量的定义、引用和初始化2、结构体数组的定义和使用3、指向结构体类型数据的指针4、共用体【要求】1、掌握结构体变量的定义、引用和初始化2、掌握结构体数组的定义和使用3、掌握指向结构体类型数据的指针第二部分《数据结构》(占总分40%)参考书目:严蔚敏,《数据结构》(C语言版),清华大学出版社2007年【考查目标】1. 理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异;实现各种基本操作。

《软件工程专业基础综合(840)》考试大纲

《软件工程专业基础综合(840)》考试大纲

《软件工程专业基础综合(840)》考试大纲江西财经大学软件与通信工程学院第一部分《C程序设计》(占总分30%)参考书目:谭浩强,《C程序设计》(第3版),清华大学出版社2005年第2章数据类型、运算符与表达式【内容】1、C的数据类型2、常量和变量3、整型数据、实型数据、字符型数据4、变量赋初值5、各类数值型数据间的混合运算6、算术运算符和算术表达式7、赋值运算符和赋值表达式8、逗号运算符和逗号表达式【要求】1、掌握C语言的数据类型、常量与变量的概念,掌握标识符的命名规则2、掌握整型数据、实型数据和字符型数据的特点和使用3、掌握变量赋初值的方法4、掌握算术表达式、赋值表达式和逗号表达式的使用方法5、了解各类数值型数据间混合运算时类型转换的方法第3章最简单的C程序设计【内容】1、C语句概述2、程序的三种基本结构3、赋值语句4、数据输入输出的概念及在C语言中的实现5、字符数据的输入输出【要求】1、掌握C语言的分类、三种基本程序结构和赋值语句的使用方法2、掌握printf函数和scanf函数的格式和使用3、掌握字符数据的输入输出函数第4章逻辑运算和判断选取控制【内容】1、关系运算符和关系表达式2、逻辑运算符和逻辑表达式3、if语句和switch语句【要求】1、掌握关系运算符、关系表达式、逻辑运算符和逻辑表达式的使用2、掌握if语句和switch语句的格式和使用3、掌握条件运算符的格式和使用第5章循环控制【内容】1、while、do-while和for语句2、循环的嵌套3、break语句和continue语句【要求】1、掌握while、do-while和for语句的格式和使用2、掌握循环结构程序设计方法第6章数组【内容】1、一维数组的定义和引用2、二维数组的定义和引用3、字符数组、常用字符串处理函数【要求】1、掌握一维数组以及二维数组的定义和使用2、掌握字符串的使用和字符串函数的应用第7章函数【内容】1、函数定义的一般形式2、函数参数和函数的值3、函数的调用4、函数的嵌套调用5、变量的存储类别:自动变量、静态变量、外部变量、寄存器变量【要求】1、掌握函数定义的格式2、掌握函数的形式参数和实际参数以及函数调用时的参数传递3、掌握函数嵌套调用的方法4、掌握自动变量、静态变量、外部变量、寄存器变量的概念和作用域第8章预处理命令【内容】1、宏定义2、文件包含处理【要求】1、掌握宏定义和文件包含处理的使用第9章指针【内容】1、地址和指针的概念2、变量的指针和指向变量的指针变量3、数组的指针和指向数组的指针变量4、字符串的指针和指向字符串的指针变量【要求】1、了解地址和指针的概念2、掌握指针变量的定义及指向简单变量指针的使用方法第10章结构体和共同体【内容】1、结构体变量的定义、引用和初始化2、结构体数组的定义和使用3、指向结构体类型数据的指针4、共用体【要求】1、掌握结构体变量的定义、引用和初始化2、掌握结构体数组的定义和使用3、掌握指向结构体类型数据的指针第二部分《数据结构》(占总分40%)参考书目:严蔚敏,《数据结构》(C语言版),清华大学出版社2007年【考查目标】1. 理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异;实现各种基本操作。

软件工程考试大纲

软件工程考试大纲

软件工程》考试大纲一、课程性质与设置目的(-)主要参考书及题型1. 主要参考书《软件工程导论》(第五版),清华大学出版社,张海藩著2.题型及分数比例选择题 20%填空题 20%名词解释 15%论述题 45%(二)课程性质和特点软件工程是农业信息化专业的一门重要课程,主要讲述建造软件系统的方法、技术、流程、工具、规范等,本课程的任务是使应考者掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展动向;如何用工程化的方法开发软件项目,以及在开发过程中应遵循的流程、准则、标准和规范。

本课程是一门实践性很强的课程,它是各种软件开发经验的总结与提炼,应考者不但应注重概念、原理、方法、技术的掌握,也应注重方法、技术的实际应用。

(三)课程的基本要求1.从总体上了解软件工程的产生、软件生产发展史、软件生存周期、各种方法和生存周期模型、软件工程面临的问题。

2.系统掌握软件开发最基本的内容:可行性研究和软件计划、需求分析、概要设计、详细设计、编码、测试、维护,系统掌握这些阶段的目标、任务、特点、步骤和文档。

3.掌握增量模型的基本内容、基本思想、运行机制、开发过程和步骤。

4.掌握结构化方法的基本思想,开发过程和步骤,应遵循的原则和准则,能够应用相应的图形表示工具开发小型软件项目。

5.初步掌握面向对象方法的基本思想、基本概念、基本模型,面向对象分析、面向对象设计、面向对象实现的任务、内容和步骤,能够应用相应的图形工具。

6.了解Jackson方法的基本思想、开发过程和步骤、能够应用相应的图形表示工具。

7.了解软件工程的质量保证中的各种基本概念和方法,了解软件工程管理中的思想和方法,了解软件开发环境与工具。

要求切实掌握课程内容的基本思想、基本概念、基本方法,能够应用相应的图形表示工具进行小型项目的开发,特别是实用方法与技术的应用。

二、课程内容与考核目标第1章绪论第1节软件工程的产生1.软件的特点。

2024年软件工程考研大纲

2024年软件工程考研大纲

2024年软件工程考研大纲
2024年软件工程考研大纲主要考察以下内容:
数据结构和算法:包括线性表、栈、队列、树、图等数据结构,以及查找、排序等算法。

面向对象编程:包括类、对象、继承、多态等面向对象的基本概念,以及常用的面向对象编程语言(如Java、C++)的语法和特性。

软件工程基础:包括软件工程的基本概念、软件生命周期、软件开发过程、软件需求工程、软件设计工程、软件测试工程等。

数据库和网络:包括数据库的基本概念、SQL语言、数据库设计和优化等,以及网络的基本概念、协议和应用。

操作系统:包括操作系统的基本概念、进程管理、内存管理、文件系统和设备管理等。

安全性:包括网络安全、数据加密等安全性的基本概念和实现方法。

软件工程》考试大纲.pdf

软件工程》考试大纲.pdf

《软件工程》考试大纲一.目的与任务1.目的《软件工程》是高职高专计算机及相关专业必修的一门专业主干课,软件工程实用性强。

学生毕业后会有不少人从事软件的开发、维护、升级工作。

学生通过这门课的学习,应掌握软件工程的开发规范,看懂并正确书写各种技术文档,能实际开发或与别人合作开发一个简单的软件。

2.任务其主要任务是为计算机科学和工程技术人员奠定必要的理论基础、培养实际动手能力和提高分析问题和解决问题的能力。

根据“理论够用,重视应用”的原则,介绍软件工程的基本知识,总结国内软件工程建设中成功与失败的经验教训,介绍原型法、面向对象等的开发方法。

使学生受到规范化开发软件工程的训练以及书写规范化文档的训练,并能熟练使用PlayCASE建模工具进行软件开发的前期设计。

二.本课程的基本要求通过“软件工程”这门课程的学习,要求学生掌握以下几个方面的知识和技能:(1)软件工程的基本概念、主要功能;(2)软件工程的开发规范及开发方法;(3)软件工程的组织管理;(4)能看懂软件工程的开发文档,并能编写开发文档;(5)能使用PlayCASE建模工具按规范要求开发一个简单的软件。

三.与其它课程的关系“软件工程”是一门综合性较强的应用课程,需要有一定的计算机专业知识,主要是计算机硬件和计算机网络、数据库、高级1程序设计语言与程序设计方法等知识。

另外,需要一定的管理业务知识以及综合应用这些知识的能力。

学好本课程也将对加深过去已学课程的理解起到重要的作用。

因为只有掌握了软件工程的基本理论和方法,才能懂得怎样对数据进行组织和处理,并成功地投入到计算机软件开发中去。

四.考核形式及时间考核形式:考试设计报告占60%,第十四周交设计报告平时占40%,以软件工程理论部分掌握的情况为主,要求如下。

五. 考核知识点与考核要求(一)理论部分第1章 软件工程1、软件的发展(了解)2、软件的概念(理解)3、软件的定义(掌握)4、软件的特点(掌握)5、软件的分类(了解)6、软件工程的基本内容(掌握)7、软件生命周期(掌握)8、软件过程模型的种类(掌握)9、什么是软件工程标准(理解)10、软件工程标准的层次(掌握)11、什么是软件开发文档(了解)12、软件开发文档的作用(了解)13、软件开发文档的分类(了解)第2章 传统的软件工程1、可行性研究的步骤(了解)2、可行性研究报告的一般格式(掌握)3、数据流程图(掌握)4、数据流程图中的元素(掌握)5、数据字典(了解)26、软件设计的内容(掌握)7、由数据流程图绘制功能模块图的方法(掌握)8、内聚与藕合的概念(掌握)9、E/R图(掌握)10、部分依赖、传递依赖的概念(理解)11、范式、关系规范化(掌握)12、软件测试方法黑盒法、白盒法(掌握)13、软件测试常用的手段、软件测试过程(掌握)第3章 面向对象的软件工程1、对象、类、继承、封装的概念(掌握)2、三种形式的模型概念模型、动态模型、功能模型(掌握)3、面向对象分析的基本过程(掌握)4、面向对象设计的方法(掌握)5、面向对象的测试过程(掌握)第4章计算机辅助软件工程(CASE)1、CASE的概念(掌握)2、CASE的分类(了解)3、CASE系统应该具备的功能(掌握)4、软件工程的未来趋势(了解)(二)设计报告要求综合运用所学习的软件工程的知识、方法及PlayCASE建模工具进行系统建模,写出设计报告。

《软件工程导论》考试大纲

《软件工程导论》考试大纲

四川工业科技学院《软件工程与项目管理》课程考试大纲一、课程类型:专业基础课二、课程总学时:8三、考试对象:(年级、专业、层次)年级:18级专业:软件工程层次:本科四、本课程的性质及任务:课程性质:本课程是一门专业基础理论课程,重在培养学生按工程化、标准化、规范化方法从事软件设计与研发的课程,对学生毕业后从事软件和网站开发岗位相关工作有重要意义。

课程定位:通过本课程的学习可以使学生掌握软件项目开发、使用和维护的工程化方法,减少因人为因素出现的软件危机,从而提高软件的生命周期。

本课程主要任务是培养学生在软件设计过程中撰写各种规格说明书,这样也利于学生写作能力和撰写毕业论文能力的提高。

五、考试知识点及要求:第一章软件工程概述(1学时)授课内容:①软件危机的产生、典型表现形式、产生的原因及消除的途径;②软件工程的基本原理、包括软件工程的定义、特性、方法学;③软件生授课目标与要求:通过本章的学习,了解和掌握软件工程的基本概念(如软件和软件工程的定义、等),软件危机的表现形式、产生的原因及消除的途径,软件工程的基本原理、方法学,软件的生存期。

掌握软件过程活动和过程模型,了解CASE。

授课的重点与难点:重点:软件工程的基本原理。

软件过程模型。

难点:软件危机的产生、典型表现形式,软件过程模型。

授课的演示与练习:演示:课堂讲授、多媒体演示、举例分析、课堂讨论练习:课后习题适当,由任课教师出些题目。

授课的建议:建议老师举例说明。

第二章项目分析与规划(1学时)授课内容:①可行性研究的任务、具体步骤、成本效益分析、可行性研究报告;②系统流程图;③系统框架图。

教学要求:深刻理解可行性研究的必要性,掌握可行性研究的任务、过程、成本效益分析以及可行性研究报告的主要内容;掌握系统流程图、系统框架图的基本内容。

授课的重点与难点:系统流程图、系统框架图难点:成本效益分析、可行性研究报告授课的演示与练习:演示:课堂讲授、实例分析、演示法练习:课后习题适当,由任课教师出些题目。

《软件工程专业基础综合(840)》考试大纲.doc

《软件工程专业基础综合(840)》考试大纲.doc
二、考试内容
1、软件工程学概述
(1)软件工程的定义、性质、目标、内容、面临的问题
(2)软件生存周期概念
(3)软件过程概念
(4)软件过程模型:瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、Rational统一过程、敏捷过程与极限编程、微软过程
2、可行性研究
(1)可行性研究的任务
(2)系统流程图
(四)图的基本应用
1.最小生成树
2.最短路径五、查找
(一)查找的基本概念
(二)顺序杏找法
(三)折半查找法六、内部排序
(一)排序的基木概念
(二)插入排序
1.直接插入排序
2.折半插入排序
(三)起泡排序(bubble sort)
(四)简单选择排序
(五)希尔排序(shell sort)
(六)快速排序
(七)二路归并排序(merge sort)
3、需求分析
(1)需求分析的概念与基本任务
(2)结构化分析方法与步骤
(3)数据流图、数据流图中的符号、画数据流图注意的事项,分层的数据流图
(4)数据字典,数据字典的作用,数据字典中的条目
(5)实体关系图
第三部分 《软件工程导论》(占总分
参考书目:张海藩,《软件工程导论》(第5版),清华大学出版社2008年
一、考试要求
1.从总体上了解软件工程的产生、软件生产发展史、软件生存周期、务种方法和生存 周期模型、软件工程面临的问题
2.系统掌握软件开发最基本的内容:可行性研究和软件计划、需求分析、概要设计、 详细设计、编码、测试、维护,系统掌握这些阶段的bl标、任务、特点、步骤和文档
3.掌握结构化方法的基本思想,开发过程和步骤,应遵循的原则和准则
4.初步掌握面向对象方法的基木思想、基木概念、基木模型,面而对象分析、面向对 象设计、面向对象实现的任务、内容和步骤,能够应用相应的图形工具

软件工程师考试大纲

软件工程师考试大纲

一、考试说明1.考试要求:(1) 掌握数据表示、算术和逻辑运算;(2) 掌握相关的应用数学、离散数学的基础知识;(3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理;(4) 掌握操作系统、程序设计语言的基础知识,了解编译程序的基本知识;(5) 熟练掌握常用数据结构和常用算法;(6) 熟悉数据库、网络和多媒体的基础知识;(7) 掌握C程序设计语言,以及C++、Java、Visual、Basic、Visual C++中的一种程序设计语言;(8) 熟悉软件工程、软件过程改进和软件开发项目管理的基础知识;(9) 熟悉掌握软件设计的方法和技术;(10) 掌握常用信息技术标准、安全性,以及有关法律、法规的基本知识;(11) 了解信息化、计算机应用的基础知识;(12) 正确阅读和理解计算机领域的英文资料。

2.通过本考试的合格人员能根据软件开发项目管理和软件工程的要求,按照系统总体设计规格说明书进行软件设计,编写程序设计规格说明书等相应的文档,组织和指导程序员编写、调试程序,并对软件进行优化和集成测试,开发出符合系统总体设计要求的高质量软件;具有工程的实际工作能力和业务水平。

3.本考试设置的科目包括:(1) 计算机与软件工程知识,考试时间为150分钟,笔试;(2) 软件设计,考试时间为150分钟,笔试。

二、考试范围考试科目1:计算机与软件工程知识1.计算机科学基础1.1 数制及其转换•二进制、十进制和十六进制等常用制数制及其相互转换1.2 数据的表示•数的表示(原码、反码、补码、移码表示,整数和实数的机内表示,精度和溢出)•非数值表示(字符和汉字表示、声音表示、图像表示)•校验方法和校验码(奇偶校验码、海明校验码、循环冗余校验码)1.3 算术运算和逻辑运算•计算机中的二进制数运算方法•逻辑代数的基本运算和逻辑表达式的化简1.4 数学基础知识•命题逻辑、谓词逻辑、形式逻辑的基础知识•常用数值计算(误差、矩阵和行列式、近似求解方程、插值、数值积分)•排列组合、概率论应用、应用统计(数据的统计分析)•运算基本方法(预测与决策、线性规划、网络图、模拟)1.5 常用数据结构•数组(静态数组、动态数组)、线性表、链表(单向链表、双向链表、循环链表)、队列、栈、树(二叉树、查找树、平衡树、线索树、线索树、堆)、图等的定义、存储和操作•Hash(存储地址计算,冲突处理)1.6 常用算法•排序算法、查找算法、数值计算方法、字符串处理方法、数据压缩算法、递归算法、图的相关算法•算法与数据结构的关系、算法效率、算法设计、算法描述(流程图、伪代码、决策表)、算法的复杂性2.计算机系统知识2.1 硬件知识2.1.1 计算机系统的组成、体系结构分类及特性•CPU和存储器的组成、性能和基本工作原理•常用I/O设备、通信设备的性能,以及基本工作原理•I/O接口的功能、类型和特性•I/O控制方式(中断系统、DMA、I/O处理机方式)•CISC/RISC,流水线操作,多处理机,并行处理2.1.2 存储系统•主存-Cache存储系统的工作原理•虚拟存储器基本工作原理,多级存储体系的性能价格•RAID类型和特性2.1.3 安全性、可靠性与系统性能评测基础知识•诊断与容错•系统可靠性分析评价•计算机系统性能评测方式2.2 软件知识2.2.1 操作系统知识•操作系统的内核(中断控制)、进程、线程概念•处理机管理(状态转换、共享与互斥、分时轮转、抢占、死锁)•存储管理(主存保护、动态连接分配、分段、分页、虚存)•设备管理(I/O控制、假脱机)•文件管理(文件目录、文件组织、存取方法、存取控制、恢复处理)•作业管理(作业调度、作业控制语言(JCL)、多道程序设计)•汉字处理,多媒体处理,人机界面•网络操作系统和嵌入式操作系统基础知识•操作系统的配置2.2.2 程序设计语言和语言处理程序的知识•汇编、编译、解释系统的基础知识和基本工作原理•程序设计语言的基本成分:数据、运算、控制和传输,过程(函数)调用•各类程序设计语言主要特点和适用情况2.3 计算机网络知识•网络体系结构(网络拓扑、OSI/RM、基本的网络协议)•传输介质、传输技术、传输方法、传输控制•常用网络设备和各类通信设备•Client/Server结构、Browser/Server结构•LAN拓扑,存取控制,LAN的组网,LAN间连接,LAN-WAN连接•因特网基础知识以及应用•网络软件•网络管理•网络性能分析2.4 数据库知识•数据库管理系统的功能和特征•数据库模型(概念模式、外模式、内模式)•数据模型,ER图,第一范式、第二范式、第三范式•数据操作(集合运算和关系运算)•数据库语言(SQL)•数据库的控制功能(并发控制、恢复、安全性、完整性)•数据仓库和分布式数据库基础知识2.5 多媒体知识•多媒体系统基础知识,多媒体设备的性能特性,常用多媒体文件格式•简单图形的绘制,图像文件的处理方法•音频和视频信息的应用•多媒体应用开发过程2.6 系统性能知识•性能指标(响应时间、吞吐量、周转时间)和性能设计•性能测试和性能评估•可靠性指标及计算、可靠性设计•可靠性测试和可靠性评估2.7 计算机应用基础知识•信息管理、数据处理、辅助设计、自动控制、科学计算、人工智能等基础知识•远程通信服务基础知识•常用应用系统3.系统开发和运行知识3.1 软件工程、软件过程改进和软件开发项目管理知识•软件工程知识•软件开发生命周期各阶段的目标和任务•软件开发项目管理基础知识(时间管理、成本管理、质量管理、人力资源管理、风险管理等)及其常用管理工具•主要的软件开发方法(生命周期法、原型法、面向对象法、CASE)•软件开发工具与环境知识•软件过程改进知识•软件质量管理知识•软件开发过程评估、软件能力成熟评估基础知识3.2 系统分析基础知识•系统分析的目的和任务•结构化分析方法(数据流图(DFD)、数据字典(DD)、实体关系图(ERD)、描述加工处理的结构化语言)•统一建模语言(UML)•系统规格说明书3.3 系统设计知识•系统设计的目的和任务•结构化设计方法和工具(系统流程图、HIPO图、控制流程图)•系统总体结构设计(总体布局、设计原则、模块结构设计、数据存储设计、系统配置方案)•系统详细设计(代码设计、数据库设计、用户界面设计、处理过程设计)•系统设计说明书3.4 系统实施知识•系统实施的主要任务•结构化程序设计、面向对象程序设计、可视化程序设计•程序设计风格•程序设计语言的选择•系统测试的目的、类型,系统测试方法(黑盒测试、白盒测试、灰盒测试)•测试设计和管理(错误曲线、错误排除、收敛、注入故障、测试用例设计、系统测试报告)•系统转换基础知识3.5 系统运行和维护知识•系统运行管理基础知识•系统维护基础知识•系统评价基础知识3.6 面向对象开发方法•面向对象开发概念(类、对象、属性、封装性、继承性、多态性、对象之间的引用)•面向对象开发方法的优越性以及有效领域•面向对象设计方法(体系结构、类的设计、用户接口设计)•面向对象实现方法(选择程序设计语言、类的实现、方法的实现、用户接口的实现、准备测试数据)•面向对象程序设计语言(如C++、Java、Visual、Bsasic、Visual C++)的基本机制•面向对象数据库、分布式对象的概念4.安全性知识•安全性基本概念•防治计算机病毒、防范计算机犯罪•存取控制、防闯入、安全管理措施•加密与解密机制•风险分析、风险类型、抗风险措施和内部控制5.标准化知识•标准化意识、标准化的发展、标准制订过程•国际标准、国家标准、行业标准、企业标准基本知识•代码标准、文件格式标准、安全标准、软件开发规范和文档标准知识•标准化机构6.信息化基础知识•信息化意识•全球信息化趋势、国家信息化战略、企业信息化战略和策略•有关的法律、法规•远程教育、电子商务、电子政务等基础知识•企业信息资源管理基础知识7.计算机专业英语•掌握计算机技术的基本词汇•能正确阅读和理解计算机领域的英文资料考试科目2:软件设计1.外部设计1.1 理解系统需求说明1.2 系统开发的准备•选择开发方法、准备开发环境、制订开发计划1.3 设计系统功能•选择系统结构,设计各子系统的功能和接口,设计安全性策略、需求和实现方法,制订详细的工作流和数据流1.4 设计数据模型•设计ER模型、数据模型1.5 编写外部设计文档•系统配置图、各子系统关系图、系统流程图、系统功能说明书、输入输出规格说明、数据规格说明、用户手册框架•设计系统测试要求1.6 设计评审2.内部设计2.1 设计软件结构•按构件分解,确定构件功能规格以及构件之间的接口•采用中间件和工具2.2 设计输入输出•屏幕界面设计、设计输入输出检查方法和检查信息2.3 设计物理数据•分析数据特性,确定逻辑数据组织方式、存储介质,设计记录格式和处理方式•将逻辑数据结构换成物理数据结构,计算容量,进行优化2.4 构件的创建和重用•创建、重用构件的概念•使用子程序库或类库2.5 编写内部设计文档•构件划分图、构件间的接口、构件处理说明、屏幕设计文档、报表设计文档、文件设计文档、数据库设计文档2.6 设计评审3.程序设计3.1 模块划分(原则、方法、标准)3.2 编写程序设计文档•模块规格说明书(功能和接口说明、程序处理逻辑的描述、输入输出数据格式的描述)•测试要求说明书(测试类型和目标、测试用例、测试方法)3.3 程序设计评审4.系统实施4.1 配置计算机系统及其环境4.2 选择合适的程序设计语言4.3 掌握C程序设计语言,以及C++、Java、Visual、Basic、Visual C++中任一种程序设计语言,以便能指导程序员进行编程和测试,并进行必要的优化4.4 系统测试•指导程序员进行模块测试,并进行验收•准备系统集成测试环境和测试工具•准备测试数据•写出测试报告5.软件工程•软件生存期模型(瀑布模型、螺旋模型、喷泉模型)和软件成本模型•定义软件需求(系统化的目标、配置、功能、性能和约束)•描述软件需求的方法(功能层次模型、数据流模型、控制流模型、面向数据的模型、面向对象的模型等)•定义软件需求的方法(结构化分析方法、面向对象分析方法)•软件设计(分析与集成、逐步求精、抽象、信息隐蔽)•软件设计方法(结构化设计方法、Jackson方法、Warnier方法、面向对象设计方法)•程序设计(结构化程序设计、面向对象程序设计)•软件测试的原则与方法•软件质量(软件质量特性、软件质量控制)•软件过程评估基本方法、软件能力成熟度评估基本方法•软件开发环境和开发工具(分析工具、设计工具、编程工具、测试工具、维护工具、CASE)•软件工程发展趋势(面向构件,统一建模语言(UML))•软件过程改进模型和方法。

《高级语言程序设计》(软件工程2024年普通专升本)课程考试大纲

《高级语言程序设计》(软件工程2024年普通专升本)课程考试大纲

2024年软件工程专业专升本《高级语言程序设计》课程考试大纲一、考核要求1.掌握C语言的基本概念、语法与运行环境的掌握情况;2.掌握C语言的基本数据类型、三种基本结构、数组的定义及使用方法、函数的定义及调用方法、指针的定义及使用方法、用户自定义数据类型及使用方法、文件的使用方法;3.掌握综合运用各种数据类型和三种基本结构解决实际问题的基本编程能力。

二、考核内容(一)C语言的特点1.了解C语言的发展及其特点;2.掌握预处理指令、main()主函数和其他自定义函数执行的特点;3.熟悉运行C语言程序的步骤。

(二)算法及程序设计的结构1.掌握算法的特性;2.掌握程序设计的三种基本结构。

(三)数据类型及其运算1.掌握三种基本数据类型的表示方法,符号常量的定义和使用方法;2.掌握标识符的命名规则;3.掌握算术运算符和逗号运算符及赋值运算符的运算规则及应用;4.了解不同数据类型之间的相互转换,强制类型转换的格式要求;5.掌握不同类型数据的输入输出格式控制符的使用方法;6.掌握数学函数中pow函数和sqrt函数的使用方法。

(四)选择结构程序设计1.掌握各种运算符的优先级顺序及表达式的运算;2.掌握用if语句和switch语句实现选择结构的应用。

(五)循环结构程序设计1.掌握while,do…while和for语句实现循环及循环的嵌套;2.了解while,do…while和for三种循环的比较;3.掌握break语句和continue语句的用法及两者的区别。

(六)数组的定义和引用1.掌握定义数组,引用数组元素和初始化数组的方法;2.掌握一维数组和二维数组的应用;3.了解定义、引用和初始化字符数组的方法。

(七)函数的定义和使用1.掌握函数的定义方法;2.掌握函数调用的一般格式,嵌套调用和递归调用;3.掌握数组名作为函数参数;4.了解局部变量和全局变量的作用域。

(八)指针的定义和使用1.掌握指针的概念,指针变量的定义和引用,指针与指针变量的区别;2.掌握通过指针引用一维数组的方法和应用;3.了解通过指针引用字符串。

安徽农业大学软件工程考试大纲

安徽农业大学软件工程考试大纲

《软件工程基础》复习大纲
一、单选题:(共20小题,每小题1.5分,共30分)
知识点:
1、软件工程三要素
2、CAD,CAM,CAI,CASE的含义
3、软件危机的主要原因
4、常见的软件生命周期模型及其特点
5、软件生命周期各阶段的成果形式
6、结构化分析方法中的三种模型的功能,表示工具及其基本构成元素
7、模块设计的基本原则,耦合和内聚角度
8、常见的耦合与内聚类型按“度”排列的顺序
9、结构化程序设计强调的是程序的哪一性能
10、软件详细设计中常采用哪几种工具
11、结构化程序设计方法的三种基本结构
12、判定树、判定表、盒图的基本特点
13、第一个体现结构化编程思想的程序设计语言
14、需求分析阶段以及软件概要设计、详细设计阶段的主要任务
二、填空题:(共10小题,每空1.5分,共15分)
知识点:
1、需求分析阶段的三种模型的功能
2、软件的概念
3、软件生命周期的基本阶段
4、描述生命周期的常见软件模型
三、名词解释:(共3题,每题5分,共15分)(6选3)
1、软件
2、软件工程
3、软件危机
4、数据流图
5、面向对象方法
6、结构化方法
四、简答题:(共2小题,每小题10分,共20分)
1、简述软件生命周期
2、简述瀑布模型的应用范围
3、什么是软件危机?分析软件危机产生的主要原因有哪些?
4、什么是模块化?模块设计的准则?
五、问答题:(共20分,每题10分)
1、画数据流图,从课堂例题及实验题中选
2、开放性问答。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《专业综合一》考试大纲《C语言程序设计》一、基本要求1. 熟悉 Visual C++6.0集成开发环境。

2. 掌握结构化程序设计的方法,具有良好的程序设计风格。

3. 掌握程序设计中简单的数据结构和算法并能阅读简单的程序。

4. 在 Visual C++6. 0集成环境下,能够编写简单的 C程序,并具有基本的纠错和调试程序的能力。

二、考试内容(一)C语言程序的结构1. 程序的构成,main函数和其他函数。

2. 头文件、函数的开始和结束标志以及程序中的注释。

3. 源程序的书写格式。

4. 运行C程序的步骤与方法。

(二)数据类型及其运算1. C的数据类型分类,及其基本数据类型的定义方法。

2. C运算符的种类、运算优先级和结合性。

3. 不同类型数据间的转换与运算。

4. C表达式类型(赋值表达式、算术表达式、关系表达式、逻辑表达式、条件表达式)和求值规则。

(三)基本语句1. 表达式语句,复合语句。

2. 输入输出函数的调用,正确输入数据并正确设计输出格式。

(四)选择结构程序设计1. 用 if 语句实现选择结构。

2. 用 switch语句实现多分支选择结构。

3. 选择结构的嵌套。

(五)循环结构程序设计1. for循环结构。

2. while和 do-while循环结构。

3. continue语句和 break语句。

4. 循环的嵌套。

(六)数组的定义和引用1. 一维数组和二维数组的定义、初始化和数组元素的引用。

2. 字符串与字符数组。

(七)函数1. 函数的定义方法。

2. 函数的类型和返回值。

3. 形式参数与实在参数,参数值的传递。

4. 函数的正确调用,嵌套调用,递归调用。

5. 局部变量和全局变量。

6. 变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。

(八)指针1. 地址与指针变量的概念,地址运算符与间址运算符。

2. 一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的定义。

通过指针引用以上各类型数据。

3. 用指针作函数参数。

4. 返回地址值的函数。

5. 指针数组,指向指针的指针。

(九)结构体与共同体1. 用typedef 说明一个新类型。

2. 结构体和共用体类型数据的定义和成员的引用。

3. 通过结构体构成链表,单向链表的建立,结点数据的输出、删除与插入。

(十)文件操作1. 文件类型指针(FILE类型指针)。

2. 文件的打开与关闭(fopen,fclose)。

3. 文件的读写(fputc,fgetc,fputs,fgets,fread,fwrite,fprintf,fscanf函数的应用)。

三、参考教材《C程序设计(第四版)》,谭浩强著,清华大学出版社。

《数据结构》一、基本要求(1)掌握数据结构的逻辑结构和存储结构;(2)掌握线性结构的特点及存储方式,能结合实际问题恰当运用;(3)掌握树型结构的特点及存储方式,能结合实际问题恰当运用;(4)掌握图型结构的特点及存储方式,能结合实际问题恰当运用;(5)能依据数据序列特点,选定高效查找的方法,并熟练地评价算法优劣;(6)能依据数据序列特点,选定高效排序的方法,并熟练地评价算法优劣。

二、考试内容第1章绪论(一)课程内容1. 数据、数据元素、数据项、数据结构的定义;2. 数据的逻辑结构:比例关系、二元组表示、示意图;3. 数据的存储结构;4. 算法的描述与分析;5. 时间复杂度与空间复杂度的计算。

(二)学习目的与要求1.了解学习数据结构的研究目的和研究内容;2. 掌握数据结构的定义及相关概念和术语;3.掌握数据的逻辑结构和存储结构;4. 了解算法及其效率的度量方法。

(三)考核知识点与考核要求1. 数据元素(数据的基本单位)、数据项(数据的最小单位)、数据结构的定义;2.数据的三种逻辑结构(线性、树形和图形):比例关系、二元组表示、示意图;3. 数据的两种存储结构(顺序和链式);4. 算法的五个特性以及与程序的关系;5. 时间复杂度与空间复杂度的简单计算方法:只要求考核方法,不要求算法。

第2章线性表(一)课程内容1. 线性表的基本知识;2. 线性表的顺序存储实现;3. 线性表的链式存储实现。

(二)学习目的与要求1. 理解线性表的定义;2. 熟练掌握线性表的顺序、单链表的表示和实现;3. 了解线性表的双链表和循环链表的表示和实现。

(三)考核知识点与考核要求1. 线性表顺序存储的表示和实现算法;2. 线性表单链表的表示和实现算法。

第3章栈和队列(一)课程内容1. 栈的基本知识和存储实现;2. 栈的具体应用举例;3. 队列的基本知识和存储实现;4. 队列的具体应用举例。

(二)学习目的与要求1. 熟练掌握栈的表示和实现;2. 了解栈的实际应用;3. 熟练掌握队列的表示和实现;4. 了解队列的实际应用。

(三)考核知识点与考核要求1. 栈的定义、特点;2. 进栈出栈序列;3. 顺序栈的表示和实现算法;4. 链栈的表示和实现:只要求考核相关知识点;5. 将中缀表达式转化为后缀表达式、后缀表达式求值:只要求考核解题方法和求解结果,不要求算法;6. 队列的定义、特点;7. 进队出队序列;8. 循环队列顺序存储的表示和实现算法;9. 链队的表示和实现:只要求考核相关知识点,不要求算法。

第4章串不列入考试大纲!不考核!第5章递归(一)课程内容1. 递归的定义;2. 递归的过程;3. 递归与栈的关系;4. 简单问题的递归实现。

(二)学习目的与要求1. 理解掌握递归的定义;2. 理解递归的过程;3. 了解递归与栈的关系;4. 掌握简单问题的递归实现。

(三)考核知识点与考核要求1. 递归问题的实现设计方法:递归体和递归出口;2. 递归过程的两个阶段:回推和递推;3. 几个简单问题的递归公式:n个数求和(求积)、一维数组的求和(求平均值、求最值)。

第6章数组和广义表(一)课程内容1. 数组的基本知识及顺序存储;2. 各种特殊矩阵的压缩存储;3. 稀疏矩阵的三元组表和存储方法;4. 广义表的相关知识和存储方法。

(二)学习目的与要求1. 熟练掌握数组类型定义和表示方式、存储计算公式;2. 掌握各种特殊矩阵的压缩存储方法;3. 熟练掌握稀疏矩阵的三元组表和存储方法;4. 熟练掌握广义表的相关知识和存储方法。

(三)考核知识点与考核要求1. 数组类型定义和表示方式、存储计算公式;2. 各种特殊矩阵的压缩存储方法:对称矩阵、三角矩阵、三对角矩阵的存储公式;3. 稀疏矩阵的三元组表和存储方法:顺序三元表、伪地址表、带行向量的链式存储、十字链表(只要求考核相关知识点);4. 广义表的相关知识和存储方法:长度、深度、图形表示、表头表尾、两种存储方式(会画示意图),只要求考核相关知识点,不要求算法。

第7章树和二叉树(一)课程内容1. 树的定义、逻辑表示方法及基本概念、性质;2. 树的各种存储结构;3. 树的遍历;4. 二叉树的定义及性质;5. 二叉树的存储实现;6. 二叉树的遍历、二叉树的构造;7. 树、森林与二叉树之间的相互转换;8. 线索二叉树;9. 哈夫曼树的构造及编码。

(二)学习目的与要求1. 了解树的定义、基本概念;2. 掌握树的逻辑表示方法及性质;3. 掌握树的存储结构;4. 掌握树的遍历;5. 熟练掌握二叉树的定义、性质及存储实现;6. 熟练掌握二叉树的遍历及递归算法;8. 熟练掌握树、森林与二叉树之间的相互转换;9. 掌握线索二叉树的方法;10. 熟练掌握哈夫曼树的构造及编码。

(三)考核知识点与考核要求1. 树的逻辑表示方法、性质、存储及遍历;2. 二叉树的定义、性质及存储实现;3. 二叉树的遍历及递归算法:只要求考核递归算法;4. 二叉树的构造:只要求考核方法,不要求算法;5. 树、森林与二叉树之间的相互转换:只要求考核方法,不要求算法;6. 二叉树的线索化:只要求考核方法,不要求算法;7. 哈夫曼树的构造及编码:只要求考核方法,不要求算法。

第8章图(一)课程内容1. 图的定义及常用术语;2. 图的各种存储结构及其遍历;3. 构造最小生成树的方法;4. 求最短路径的方法;5. 求拓扑排序的方法;6. 求关键路径的方法。

(二)学习目的与要求1. 了解图的定义及表示;2. 掌握图的存储结构及遍历、生成树;3. 熟练掌握构造最小生成树的方法;5. 熟练掌握拓扑排序的求法;6. 熟练掌握关键路径的求法。

(三)考核知识点与考核要求1. 图的存储结构(邻接矩阵、邻接表)及其遍历(深度、广度)、遍历生成树:只要求考核方法,不要求算法,基于深度、广度遍历的算法会读会用能写出遍历序列;2. 构造最小生成树的方法:只要求考核方法,不要求算法;3. 最短路径的求法:只要求考核方法,不要求算法;4. 拓扑排序的求法:只要求考核方法,不要求算法;5. 关键路径的求法:只要求考核方法,不要求算法。

第9章查找(一)课程内容1. 查找的基本概念以及ASL;2. 各种静态查找算法;3. 基于二叉查找树的动态查找算法;4. 基于散列表的动态查找算法。

(二)学习目的与要求1. 熟练掌握顺序查找的方法、算法以及ASL成功和ASL不成功;2. 熟练掌握折半查找的方法、算法以及ASL成功和ASL不成功,会画折半查找的判定树;3. 理解分块查找的方法、最佳分块方案;4. 熟练掌握二叉排序树的构造方法及查找过程以及ASL成功和ASL不成功;5. 熟练掌握散列表的建表方法及其查找过程、ASL成功和ASL不成功:除留余数法构造哈希函数、线性探测法解决冲突、拉链法解决冲突。

(三)考核知识点与考核要求1. 顺序查找的方法、算法以及ASL成功和ASL不成功;2. 折半查找的方法、算法以及ASL成功和ASL不成功,会画折半查找的判定树;3. 分块查找的方法、最佳分块方案;4. 二叉排序树的构造方法及查找过程以及ASL成功和ASL不成功;5. 散列表的建表方法及其查找过程、ASL成功和ASL不成功:除留余数法构造哈希函数、线性探测法解决冲突、拉链法解决冲突。

第10章内排序(一)课程内容1. 排序的基本概念;2. 插入排序:直接插入排序、折半插入排序、希尔排序;3. 交换排序:冒泡排序、快速排序;4. 选择排序:简单选择排序、堆排序;5. 二路归并排序。

6. 基数排序。

(二)学习目的与要求1. 理解各种排序方法的基本思想及其特点;2. 掌握各种排序方法的排序过程;3. 掌握各种排序方法的性能比较。

(三)考核知识点与考核要求1. 各种排序方法的基本思想及其特点:只要求考核方法,不要求算法;2. 各种排序方法的排序过程:只要求考核方法,不要求算法;3. 各种排序方法的性能比较:只要求考核相关知识点,不要求应用算法设计。

三、参考教材《数据结构教程(第4版)》,李春葆主编,清华大学出版社2013年版。

相关文档
最新文档