西北师范大学计算机科学与工程学院2023年硕士研究生招生考试大纲
《程序设计与数据结构》科目大纲
(科目代码:821)
一、考核要求
《程序设计》、《数据结构》两门课程均是计算机类专业的核心课程。《程序设计》课程主要培养学生编写程序的基本能力以及计算思维,掌握程序设计语言(C或C++)的基本成分、语法规则等基本知识,建立起结构化程序设计思想和方法。用计算机解决一个复杂工程问题,需要将反映问题的数据信息存入计算机,并设计能解决问题的算法。《数据结构》主要阐述计算机如何存储各种数据和数据之间的关系,以及对数据做基本处理的算法实现。要求考生比较系统地理解数据结构的基本概念和基本理论,掌握常用数据结构及其基本算法,具有综合运用数据结构知识解决问题的能力。
《程序设计与数据结构》的考核分为程序设计和数据结构两部分,分值各占50%。程序设计部分考核学生对结构化程序设计方法和编程语言的掌握情况以及独立编程的能力;数据结构部分考核学生对常用数据结构以及相关基本算法的掌握和运用能力。
二、考核评价目标
考核评价目标应使录取的研究生较好地掌握C或C++程序设计语言和数据结构,具有程序设计能力,以及分析与解决复杂工程问题的能力,为以后从事的研究、开发工作提供必要的软件基础和基本技能。而对程序设计的具体编程语言、数据结构的定义和算法描述语言,学生既可以选择C,也可以选择C++。
三、考核内容
程序设计部分(分值比例:50%)
第一章 程序设计概述及基本知识
【考试内容】
C或C++程序的基本数据类型、基本算术运算、简单程序的设计。
【考试要求】
(1) 理解C或C++程序的基本构成,变量的定义与变量名的基本规则;
(2)掌握C或C++的基本数据类型;宏常量与宏替换、const常量的定义、常用的标准数学函数等;
(3)掌握C或C++运算符和表达式,算术表达式、赋值表达式与逗号表达式等;
(4)数据的输入与输出。
第二章 选择控制结构
【考试内容】
条件选择语句if和switch的语法及其应用。
【考试要求】
(1) 理解if语句与条件表达式的区别、switch语句的执行流程;
(2)掌握if语句与switch语句在程序中的使用。
第三章 循环控制结构
【考试内容】
for、while、do-while三种循环控制语句的语法特点和应用。
【考试要求】
(1)理解for、while、do-while语句的执行流程及其循环条件表达式的作用和它们在循环控制上的区别;
(2) 掌握goto、break与continue语句的区别与应用;
(3)能熟练地用三种循环语句进行循环程序设计。
第四章 函数与模块化程序设计
【考试内容】
C或C++中函数的定义和使用。
【考试要求】
(1) 掌握函数的定义、向函数传递值和从函数返回值的过程;
(2)熟练掌握在程序设计中正确使用函数;对于已知的递归算法,能写出相应的递归程序;
(3)理解全局变量与局部变量、变量的作用域与生存期、变量的动态与静态存储方式等的区别;
(4)理解模块化程序设计的原则与思想,了解在多个程序文件中函数与函数的关系。
第五章 数组
【考试内容】
一维和二维数组的定义及其应用。
【考试要求】
(1) 掌握一维数组与二维数组的定义和初始化;
(2)掌握数组做函数参数的程序设计。
(3)掌握字符串的定义与存储、字符串处理函数等;
(4)掌握在程序设计中应用一维数组、二维数组、字符串,以及对数组进行简单排序和查找的方法。
第六章 指针
【考试内容】
C或C++中指针的概念、定义、运算和应用。
【考试要求】
(1)掌握变量的内存地址,指针变量的定义与初始化,以及间接寻址运算符;
(2)理解按值调用与按引用调用的区别;
(3)理解返回指针的函数与函数指针的区别,以及函数指针的应用。
第七章 指针和数组
【考试内容】
C或C++中指针和数组间的关系、指针数组及应用。
【考试要求】
(1)理解一维数组与二维数组的地址结构,掌握指针和数组间的关系;
(2)理解指针数组、数组指针、指向指针的指针之间的关系与区别,以及指针运算的用途和意义;
(3)掌握在程序中利用指针操作数组元素、字符串,以及用指针作函数参数;掌握在程序中应用指针数组;
(4)理解动态数组。
第八章 结构体、共用体和枚举类型数据
【考试内容】
结构体、共用体、枚举等自定义数据类型的定义和应用。
【考试要求】
(1)掌握结构体、共用体的定义,理解结构体与共用体的区别,会用typedef定义结构体...更多内容见官网