重庆邮电大学研究生复试
没事 它编程不会很难 我们今年考了两道题,一道是让你输入一个数字,然后输出它每位数字的平方和(该数字小于32767,就是用int就行了)。第二道比较难,我当时也没做出来。是让你输入一个数组,然后在输入一个数字,然后用二分查找找出该数字在数组中的下标位置。只要你做出一道就可以了,呵呵~
上机就两道题,一个是数字计算,一个是字符串的操作。很简单的,比二级c还简单。。
上机环境:你可以使用c,c++,vc,java等。一般调试出一道题就能及格了。如果调试不正确,即使2道题都作对了。得分也不高的。
一、单项选择题(每小题2分,共20分)
A B B B B B A D B C
二、简述题(每小题5分,共35分)
1. 在数据面向的对象方面:文件系统的管理者是文件系统;数据库系统的管理者是数据库管理系统。(1分)在数据共享程度方面:文件系统共享性差,冗余度大;数据库系统共享性高,冗余小。(1分)在数据独立性方面:文件系统数据独立性差;数据库系统具有高度的物理独立性和一定的逻辑独立性。(1分)在数据结构化方面:文件系统记录内有结构,整体无结构;数据库系统整体结构化。(1分)在数据控制能力方面:文件系统由应用程序自己控制;数据库系统由数据库管理系统控制。(1分)
[说明:指出三点不同都可,上述答案供参考]
2. 数据库系统有外模式、模式和内模式三级模式结构[2分],在这三级模式之间提供了两级映象,即外模式/模式映象和模式/内模式映象[2分]。正是这两层映象保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性[1分]。
3. 查询选修了1号课程或3号课程的学生的学号[5分]。
[说明:将或写成和的扣3分]
4. 若关系中的某一个属性组的值能够唯一地标识一个元组,则成该属性组为候选码[2分];若一个关系中有多个候选码,则选定其中一个为主码[1分];设F是关系R中的一个属性组,但不是R的码,如果F与关系S中的主码相对应,则称F为R的外码[2分]。 5. 需求分析、概念
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
、逻辑设计、物理设计、数据库实施、数据库运行与维护。[5分,答案不全适当扣分]
6. 并发操作可能会带来的数据不一致性问题包括丢失修改、不可重复度和读脏数据[3分]。产生这些问题的主要原因是并发操作破坏了事务的隔离性[2分]。
7(R属于第一范式[2分],分解为如下两个模式[3分]:
R1(A,D), A为主码;R2(A,B,C), (A,B)为主码,A为外码
三、用SQL语句描述下列数据库操作 (每小题3分,共30分)
1. SELECT * FROM S;
2. SELECT DISTINCT S# FROM SC WHERE G<60; 3. SELECT S#, G FROM SC WHERE C#=3 ORDER BY G DESC;
4. SELECT COUNT(*) FROM S;
5. SELECT SN FROM S WHERE SD IN (‘IS’, ‘CS’);或
SELECT SN FROM S WHERE SD=‘IS’ OR SD=‘CS’;
6. SELECT S#, COUNT(*) FROM SC GROUP BY S#;
7. SELECT S# FROM SC WHERE C#=2 AND G>=90;
8. DELETE FROM SC WHERE S# IN(或=)
(SELECT S# FROM S WHERE SN=’ 王敏’)
9. UPDATE S SET SA=SA+1;
10. CREATE VIEW XXX AS SELECT S#, SN, SA FROM S WHERE SD=’CS’; [说明:以上答案仅供参考,其他答案由评阅教师判定如何给分。]
四、求解题 (每小题5分,共15分)
E-R图;
关系模式参考如下形式,候选码用下划线表示:
J(JNO, JNAME, CITY)
P(PNO, PNAME, COLOR, WEIGHT) S(SNO, SNAME, CITY)
J-S(SNO, JNO, PNO, QTY)
[说明:本题还可以有其他合理的设计方案,由评阅教师参考评分]
重庆邮电大学计算机科学与技术学院
硕士研究生入学复试计算机编程应用能力测试考试大纲
适用范围:计算机专业硕士入学复试
考试题型:编程题
考试形式:上机编程
考试时间:60分钟
考试要求
熟悉一种高级语言所提供的基本功能、特点、语句构成、数据结构和程序框架; 掌握结构化程序设计方法或面向对象编程技术;
掌握算法描述方法;
掌握编制和调试一个实用程序的完整过程(编辑、编译、连接、运行); 具有编制和调试一个结构合理、清晰易懂、层次分明、算法正确的程序的能力; 具有良好的程序编制风格。
考试内容
程序设计语言的基础知识:基本数据类型、字符串、数组、结构体、指针、链表等的定义、初始化、引用和相关操作;
格式化输入输出函数的使用:键盘输入、通过文件进行数据读入和输出等; 结构化程序设计:顺序、选择、循环;
模块化程序设计,函数:函数定义、函数调用、参数传递;
常用库函数的使用,如数学函数、字符串处理函数及文件操作相关函数等。 算法与数据结构:
常见算法的描述和实现,如递推化算法(牛顿迭代法、二分法、穷举算法等)、有序数列的相关操作、线性链表的相关操作(建立、查找、插入、删除等)、初等数论问题的求解(最大公约数、最小公倍数、素数等)、递归算法、字符串处理(字符和字符串的插入、删除、连接、比较等)等;
常用数据结构的应用,如线性表、栈、队列、串、二叉树等。
常见查找(顺序查找、折半查找等)及内部排序(选择法、冒泡法等)算法的应用。 参考教材
《数据结构》(C语言版)严蔚敏等,清华大学出版社。
《C语言程序设计(第二版)》谭浩强,清华大学出版社。
《C++程序设计教程》钱能,清华大学出版社(选择其他语言编程的同学可选取相应的参考教材)。
B卷的第一题是求(1+2+……+m)+(1+2+……+m+1)+……+(1+2+……+n)的和,其中n>m,第二题是将输入的一个字符串反转,并且将反转后的字符串连接到源字符串在输出,例如:输入abcd,输出:abcddcba,要求自己实现翻转函数
A卷第一个是1,1+2/1,1+2/1+3/2,........(1+2/1+3/2+5/3+...)前20项之和,感觉A比B卷复杂些,第二个也是字符串的,我记得不是很清楚了。
补充A卷第2题
A卷第2题是要求输入两个字符串,然后选择插入位置,将第二个字符串从指定位置后插入,第一个字符串的剩下部分后移,如果输入位置大于第一字符串长度,就将第二个字符串接到第一个字符串的尾部.例如输入第一字符串AD.第二字符串BC,插入位置为1,结果就是ABCD,
考试后发现,前30分题目有25分背会这些既可全得。
再弄清楚关系代数、sql、ER图基本就是高分了。
《数据库原理》考试大纲
第一章、绪论
[1] 了解数据管理技术的发展过程
[2] 掌握数据库管理系统的概念和功能
数据库管理系统是位于用户与操作系统之间的一层数据管理软件。
它的主要功能包括:1)数据定义功能 2)数据操纵功能 3)数据库的运行管理 4)数据库的建立和维护功能。
[3] 掌握数据库系统的特点
1)数据结构化,这是和文件系统的根本区别 2)数据的共享性高,冗余度低,易扩充 3)数据独立性高 4)数据有DBMS统一管理和控制
[4] 掌握数据库的三级模式结构
数据库系统的三级结构是指数据库系统是由外模式、模式和内模式三级构成。 模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
外模式也称子模式或用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述。
内模式也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
[5] 掌握数据库的两级映像功能及数据独立性
模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。对应于同一个模式可以有任意多个外模式。对于每一个外模式,数据库系统都有一个外模式/模式影像,它定义了该外模式与模式之间的对应关系。这些映像的定义通常包含在各自外模式的描述中。当模式改变时,由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
数据库中只有一个模式,也只有一个内模式,因此,模式/内模式的映像是唯一的。它定义了数据库全局逻辑结构与存储结构之间的对应关系。映像的定义通常包含在模式描述中。当数据库的存储结构改变了,由数据库管理员对模式/内模式映像作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,建成数据的物理独立性。 [6] 掌握概念模型与数据模型的区别
概念模型用于信息世界的建模,是现实世界道信息世界的第一层抽象,它是数据库 设计人员进行数据库设计的有力工具。
数据模型是严格定义的一组概念的集合。这些概念精确的描述了系统的静态特性、动态特性完整性约束条件。
[7] 掌握数据模型的组成要素和典型的数据模型
数据模型由数据结构、数据操作、数据的约束条件组成。
典型的数据模型有层次模型、网状模型、关系模型和面向对象模型
第二章、关系数据库
[1] 掌握关系模型的组成
关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。 [2] 掌握关系的完整性约束
关系模型允许定义三类完整性约束:实体完整性、参照完整性和用户定义的完整性。 [3] 掌握关系的基本术语和形式化定义
[4] 掌握关系代数
[5] 了解关系演算
第三章、SQL语言
[1] 掌握数据定义语言 p87
[2] 重点掌握数据查询语言p91
[3] 掌握数据更新语言p117
[4] 掌握视图的定义与使用p121
[5] 掌握数据控制语言p126
[6] 了解SQL语言的嵌入式应用
[7] 了解视图消解过程及对视图操作的限制
第四章、关系系统及其查询优化
[1] 理解查询优化的一般策略
1)选择运算应尽可能先做。2)在执行连接前对关系适当地预处理。
[2] 了解关系代数等价变换规则及表达式的优化算法
第五章、关系数据理论
[1] 掌握函数依赖概念
设R(U)是属性集U上的关系模式。X,,是,的子集。若对于,(,)上的任意一个可能的关系,,,中不可能存在两个元组在,上的属性值相等,而在,上的属性值不等,则称,函数确定,或者,函数倚赖于,,记为,-〉Y(符号是箭头)
[2] 掌握部分函数依赖和传递函数依赖的概念
在R(U)中,如果X-〉Y,并且对于X的任意一个真子集X‘,都有X’不->Y,则称Y对X完全函数依赖,X-〉Y 箭头上是,
若,,〉,,但,不完全函数依赖于,,则称,对,部分函数依赖。
在,(,)中,如果,,〉,,(,不是,的子集),,不,〉,,,,〉,,则称,对,传递函数依赖。
[3] 理解规范化程度不高的范式可能存在的问题
[4] 掌握1NF、2NF、3NF、BCNF等范式的定义
,,,,每一个分量必须是不可分的数据项。
,,,,,属于,,,,并且每一个非主属性完全函数依赖于码,则,属于,,, 设,为,
中的属性或属性组合,若U完全函数依赖于K,则称K为R的候选码。若候选码多于一个,则选定期中的一个为主码。
包含在任意一个候选码中的属性,叫做主属性。不包含在任何码中的属性叫非主属性。 ,,,,在R《U,F》中不存在码X,属性组Y及非主属性Z (Z不属于Y)使得Y函数依赖于X,(X不函数依赖于Y)Y-〉Z成立,则称R《U,F》属于3NF。
BCNF,关系模式R《U,F》属于1NF,若X ->Y且Y 不属于X时X必有码,则R《U,F》属于BCNF。
[5] 掌握模式分解方法,可分解至3NF的相关算法
不会
第六章、关系数据库设计
[1] 掌握数据库设计的步骤及各阶段的任务
1) 需求分析阶段:准确的了解与分析用户需求
2) 概念结构设计阶段:对用户需求进行综合、归纳与抽象,形成一个独立于DBMS的概念模型。
3) 逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。
4) 数据库物理设计阶段:为逻辑模型选取一个最合适应用环境的物理结构(包括存储结构和存取方法)
5) 数据库实施阶段:运用DBMS提供的数据语及其宿主语言,根据逻辑结构设计和物理设计的结构建立数据库,编制与调试应用程序,组织数据入库。
6) 数据库运行和维护阶段:不断对数据库进行评价、调整和修改。 [2] 熟练掌握概念结构设计方法和,-,图设计方法P213 [3] 熟练掌握将,-,图转换成关系模式的方法
[4] 了解数据库的物理设计、数据库实施与维护
第七章、数据库恢复技术
[1] 掌握事务的概念和特性
所谓事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可
分割的工作单位。
事务具有原子性、一致性、隔离性、持续性
[2] 掌握数据库系统中故障的种类
1)事务内部的故障 2)系统故障 3)介质故障 4)计算机病毒 [3] 掌握数据库恢复的意义和实现技术
最常用的技术是数据转储和登录日志文件
转储分为静态转储和动态转储。
[4] 掌握各种故障的恢复策略
1) 反向扫描日志文件,查找该事务的更新操作。 2) 对事务的更新操作执行逆操作
3) 继续反向扫描日志文件,查找该事务的其他更新操作,并进行同样处理
4) 如此进行下去,直到找到该事务的开始标记 事务故障的恢复
反向扫描日志文件,Undo事务中的更新操作
由系统自动完成
系统故障的恢复
首先正向扫描日志文件,生成Redo和Undo队列
然后对Undo队列中的各事务进行Undo
最后对Redo队列中的各事务进行Redo
由系统在重启时自动完成
介质故障的恢复
首先装入最新后备副本和有关日志文件副本,Redo已提交的事务,使数据库恢复至故障前某
一时刻的一致状态
装入副本由DBA介入完成,并执行DBMS提供的恢复命令 [5] 了解具有检查点的故障恢复技术
[6] 了解镜像数据库的作用
第八章、并发控制
[1] 理解数据库并发操作引起的问题
[2] 掌握数据库并发控制的意义和实现技术
数据并发控制的主要技术是封锁
[3] 掌握共享锁和排他锁的特点
排它锁又称写锁,事务T加上X锁,其它事务不能对该事务进行任何操作 共享锁又称读锁,事务T加上S锁后,其它事务也可以加S锁读数据,但是不能加X锁修改。
[4] 掌握三级封锁
协议
离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载
一级封锁:修改之前必须加X锁, 二级封锁:读数据前必须加S锁,三级封锁:一级封锁协
议加上事务T,在读取数据R之前必须加S锁
[5] 掌握事务的串行化概念
多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行执行它们的结构相同,称
这种策略为可串行化。
[6] 掌握二阶段锁协议
两段锁协议指所有事务必须分两个阶段对数据加锁和解锁。
在对任何数据进行读写操作之前,首先要申请并获得对该数据的封锁。 在释放一个封锁之后,事务不再申请和获得任何其它封锁。 [7] 了解多粒度锁及意向锁概念
第九章、数据库安全性
[1] 掌握数据库安全性的概念
数据库的安全性指为其建立和采取的各种安全措施以保护其硬件和软件以及数据,防止其因
偶然或者恶意的原因使系统遭到破坏,数据遭到更改或泄漏等。 [2] 掌握数据库的安全控制技术
1)用户标识与鉴别 2)存取控制 3)自主存取控制 4)强制存取控制 第十章、数据库完整性
[1] 掌握数据库完整性概念
指数据的正确性和相容性
[2] 掌握数据库完整性控制机制的功能
1) 定义功能:提供定义完整性的约束条件机制
2) 检查功能:检查用户发出的操作要求是否违背了完整性约束条件 3) 如果发现了用户的操作请求使数据违背了完整性约束条件,则采取一定的动作保
证数据完整性。
第十一章、数据库新技术
[1] 了解分布式数据库的概念和特点
[2] 了解面向对象数据库模型的概念和特点
参考教材:
《数据库系统概论》萨师煊、王珊 第三版,高等教育出版社 2000 w w w . i k
y .c n