自练题20170716

40 篇文章 0 订阅
13 篇文章 0 订阅

1.分页式管理每取一数据,要访问( )次内存?
答:3次,因为分页式存储管理读取数据时,要将其给你的相对地址转变为绝对地址,首先将相对地址转为(页号,页内偏移),然后根据页号去页表内查找,最后得到绝对地址。所以,首先去页表内查找就是去内存读取,访问一次,然后得到绝对地址之后,对内存进行读写,读写一次会访问两次内存,所以加起来是访问了三次内存

2.SQL语言称为?
答:structure query language 结构化查询语言

3.问:数据库系统对文件管理的优势在于?
答:数据库系统数据可共享

4.下列关于数据库系统特点的叙述中,正确的一项是 ( )
A各类用户程序均可随意地使用数据库中的各种数据
B数据库系统中概念模式改变,则需将与其有关的子模式做相应改变,否则用户
程序需改写
C数据库系统的存储模式如有改变,概念模式无需改动
D数据一致性是指数据库中数据类型的一致
①数据库的概念模式的定义:是数据库中全体数据的逻辑结构和特征的描述,隐藏了物理存储的细节,注重于描述实体,数据类型,联系,用户操作和约束。
②数据库的存储模式,也称内模式,是数据物理结构和存储方式的描述
③数据一致性是指在数据更新前后,数据没有矛盾,当然一致性还包括字段名称,还有字段对同一事物的表达

5.序列16 14 10 8 7 9 3 2 4 1是大顶堆还是小顶堆还是二叉排序树还是不是堆
堆是树形的数据结构。首先将序列写成完全二叉树,堆都是完全二叉树,分为大顶堆,小顶堆。大顶堆的要求为:根>左子树&&根>右子树,小顶堆的要求:根<左子树&&根<右子树。而完全排序树的要求是:左子树<根<右子树。

6.在调试程序时,可以把所有输出送到屏幕显示,而不必正式输出到打印设备,其运用了 spooling技术还是I/O重定向还是共享技术还是缓冲技术?
①Spooling技术是将独占设备在逻辑上设置为共享设备。
②I/O重定向是指将执行结果发送到别的设备或文件,而重定向分为输入重定向和输出重定向,而且不必改变应用程序,例如调试程序

7.一个有向图的邻接表和逆邻接表中的结点个数是否一定相等
在我看来,邻接表是数组和链表的结合,每个顶点都要作为头来遍历一次。一定要把顶点能指向的点都遍历出来,而不是像以前的路径一下按照顺序遍历
链表节点包括下标,数据和指针
无向图的邻接表:
这里写图片描述
有向图的邻接表:
这里写图片描述
有向图的逆邻接表:
这里写图片描述
总而言之,逆邻接表和邻接表基本是一一对应的,除了顺序不一致。邻接表可以计算出度,而逆邻接表可以计算入度。

8.以下程序段完全正确的是
Aint *p; scanf(”%d”,&p);
Bint *p; scanf(“%d”,p);
Cint k, *p=&k; scanf(”%d”,p);
Dint k, *p; *p= &k; scanf(“%d”,p);
A中,输出的是指针p的地址,没有意义,且有可能为野指针
B中,输出的是p指向内容的地址,但是p并没有指向,还是错误的
C中,输出的是p指向内容的地址,且定义了p指向了k的地址,正确
D中,输出的p指向内容的地址,但是k的地址赋给了*p而不是p,所以出错

9.哪些是SQL的DML语句?
DML(manipulate)是指数据操纵语言,例如insert,delete,update,增删改
DDL(definition)是指数据定义语言,例如create,alter,drop,大多与表有关
DCL(control)是指数据控制语言,例如grant,revoke,deny,与数据库用户权限有关
DQL是指数据查询语言,例如select,where,order by,group by和having,用来获得数据

10.数据模型由哪三部分组成?
数据结构,数据操作,完整性约束

11.n个结点的线索二叉树上含有的线索数为 ?
首先每个节点一般都应该有两条线索。但是有些节点之间已经有边在联系了,所以不需要线索了,所以要减去边数。设有n个节点,原先的线索为2n,然后减去边数n-1,,最终线索数为n+1

12.线索二叉链表是利用()域存储后继结点的地址?
其左孩子域lchild:0表示左孩子,1表示前继节点。
其右孩子域rchild:0表示右孩子,1表示后继节点

13.#define add(a,b) a+b
int main()
{
printf(“ % d\n”, 5 * add(3, 4));
return 0;
}输出结果是?
宏定义是直接替换的,所以就是5*3+4,为19

14.下列正确的是?.
A字符串数组,是指数组中的每个元素都是一个存放字符串的一维数组
B char ca[3][5] = {“A”, “BB”, “CCC”}; 是不合语法的
C char ca[ ][5] = {“A”, “BB”, “CCC”}; 是不合语法的
D char *ca[3] = {“A”, “BB”, “CCC”}; 是不合语法的
A是正确的

15.具有10个叶结点的二叉树中有多少个度为2的结点?
设度为0的节点有n0个,度为1的节点有n1个,度为2的节点有n2个,总节点数为n个。则n=n0+n1+n2.又n=2n2+n1+1,所以n2=n0-1.有9个度为2的节点

16.由多个源文件组成的C程序,经过编辑、预处理、编译,链接等阶段会生成最终的可执行程序。下面哪个阶段可以发现被调用的函数未定义?
预处理是 C 语言程序从源代码变成可执行程序的第一步,主要是 C 语言编译器对各种预处理命令进行处理,包括头文件的包含、宏定义的扩展、条件编译的选择等。
编译之前,C 语言编译器会进行词法分析、语法分析 (-fsyntax-only) ,接着会把源代码翻译成中间语言,即汇编语言 。 编译程序工作时,先分析,后综合,从而得到目标程序。所谓分析,是指词法分析和语法分析;所谓综合是指代码优化,存储分配和代码生成。 值得一提的是,大多数的编译程序直接产生机器语言的目标代码,形成可执行的目标文件,但也有的编译程序则先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行翻译加工处理,最后产生可执行的机器语言目标文件。
链接是处理可重定位文件,把它们的各种符号引用和符号定义转换为可执行文件中的合适信息( 一般是虚拟内存地址 ) 的过程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值