NOIP 2014 提高组初赛试题

第 1 题
以下哪个是面向对象的高级语言( ).
A.汇编语言
B.C++
C.FORTRAN
D.Basic
正确答案: B
本题共 1.5

第 2 题
1TB代表的字节数量是( ).
A.2的10次方
B.2的20次方
C.2的30次方
D.2的40次方
正确答案: D
本题共 1.5

第 3 题
二进制数00100100和00010101的和是( ).
A.00101000
B.001010100
C.01000101
D.00111001
正确答案: D
本题共 1.5

第 4 题
TCP协议属于哪一层协议( ).
A.应用层
B.传输层
C.网络层
D.数据链路层
正确答案: B
本题共 1.5

第 5 题
下列几个32位IP地址中,书写错误的是( ).
A.162.105.128.27
B.192.168.0.1
C.256.256.129.1
D.10.0.0.1
正确答案: C
本题共 1.5

第 6 题
在无向图中,所有定点的度数之和是边数的( )倍.
A.0.5
B.1
C.2
D.4
正确答案: C
本题共 1.5

第 7 题
对长度位n的有序单链表,若检索每个元素的概率相等,则顺序检索到表中任一元素的平均检索长度为( ).
A.n/2
B.(n+1)/2
C.(n-1)/2
D.n/4
正确答案: B
本题共 1.5

第 8 题
编译器的主要功能是( ).
A.将一种高级语言翻译成另一种高级语言
B.将源程序翻译成指令
C.将低级语言翻译成高级语言
D.将源程序重新组合
正确答案: B
本题共 1.5

第 9 题
二进制数111.101所对应的十进制数是( ).
A.5.625
B.5.5
C.6.125
D.7.625
正确答案: D
本题共 1.5

第 10 题
若有变量 int a, float x, y, 且 a=7, x=2.5, y=4.7, 则表达式 x+a%3*(int)(x+y)%2/4的值大约是( ).
A.2.500000
B.2.750000
C.3.500000
D.0.000000
正确答案: A
本题共 1.5

第 11 题
有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中的三个续结点。
三个续结点
struct node {
int data;
struct node *next;
} *p,*q,*r;
现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下程序段中错误的是( )
A.q->next = r->next; p-> next = r; r->next = q;
B.p->next = r; q->next = r->next; r->next = q;
C.q->next = r->next; r->next = q; p->next = r;
D.r->next = q; q->next = r->next; p->next = r;
正确答案: D
本题共 1.5

第 12 题
同时查找2n 个数中的最大值和最小值,最少比较次数为( ).
A.3(n-2)/2
B.4n-2
C.3n-2
D.2n-2
正确答案: C
本题共 1.5

第 13 题
设G是有6个结点的完全图,要得到一颗生成树,需要从G中删去( )条边.
A.6
B.9
C.10
D.15
正确答案: C
本题共 1.5

第 14 题
以下时间复杂度不是O(n2)的排序方法是( ).
A.插入排序
B.归并排序
C.冒泡排序
D.选择排序
正确答案: B
本题共 1.5

第 15 题
以下程序实现了找第二小元素的算法。输入时n个不等的数构成的数组S,输出S中第二小的数SecondMin。在最坏的情况下,该算法需要做( )次比较。

A.2n
B.n-1
C.2n-3
D.2n-2
正确答案: C
本题共 1.5

第 16 题
若逻辑变量A、C为真,B、D为假,以下逻辑运算表达式真的有( ).
A.(B∨C∨D)∨D∧A
B.((- A∧B)∨C)∧-B
C.(A∧B)∨(C∧D∨-A)
D.A∧(D∨-C)∧B
正确答案: AB
本题共 1.5

第 17 题
下列( )软件属于操作系统软件。
A.Microsoft Word
B.Windows XP
C.Android
D.Mac OS X
E.Oracle
正确答案: BCD
本题共 1.5

第 18 题
在NOI比赛中,对于程序设计题,选手提交的答案不得包含下列哪些内容( ).
A.试图访问网络
B.打开或创建题目规定的输入/输出文件之外的其他文件
C.运行其他程序
D.改变文件系统的访问权限
E.读写文件系统的管理信息
正确答案: ABCDE
本题共 1.5

第 19 题
以下哪些结构可以用来存储图( ).
A.邻接矩阵
B.栈
C.邻接表
D.二叉树
正确答案: AC
本题共 1.5

第 20 题
下列各无符号十进制整数中,能用八位二进制表示的数有( ).
A.296
B.133
C.256
D.199
正确答案: BD
本题共 1.5

第 21 题
有数字1,1,2,4,8,8所组成的不同的四位数的个数是_____.
正确答案: 102
本题共 5

第 22 题
如图所示,图中每条边上的数字表示该边的长度,则从A到E的最短距离是_____.
A到E的最短距离
正确答案: 15
本题共 5

第 23 题

输入:7 31
输出:_________
正确答案: 8
本题共 8

第 24 题

输入: 6 3
输出:________
正确答案: 20
本题共 8

第 25 题

输入:
7
aaa
aba
bbb
aaa
aaa
ccc
aa
输出:______
正确答案: 2 5 6 3 4 7 1
本题共 8

第 26 题

输入: 11 3
输出:_________
正确答案: 3 6 9 1 5 10 4 11 8 2 7
本题共 8

第 27 题
(双栈模拟数组) 只使用两个栈结构stack1和stack2,模拟对数组的随机读取。作为栈结构,stack1和stack2只能访问栈顶(最后一个有效元素)。栈顶指针top1和top2均指向栈顶元素的下一个位置。 输入第一行包含的两个整数,分别是数组长度n和访问次数m,中间用单个空格隔开。 第二行包含n个整数,一次给出数组各项(数组下标从0到a-1)。第三行包含m个整数,需要访问的数组下标。对于每次访问,输出对应的数组元素。

1.正确答案: n
2.正确答案: 0
3.正确答案: stack2[top2]=stack1[top1]
4.正确答案: stack1[top1]=stack2[top2]
5.正确答案: top1-1

本题共 13

第 28 题
2.(最大矩阵和)给出M行N列的整数矩阵,就最大的子矩阵和(子矩阵不能为空)。 输入第一行包含两个整数M和N,即矩阵的行数和列数。之后M行,每行N个整数,描述整个矩阵。程序最终输出最大的子矩阵和。(第一空2分,其余3分,共14分)

1.正确答案: [1][1]
2.正确答案: rowsum[i][0]=0
3.正确答案: rowsum[i][j-1] + matrix[i][j]
4.正确答案: area=0
5.正确答案: rowsum[i][last]-rowsum[i][first-1]

本题共 14