noip2010提高组初赛试题及答案

更新时间:2024-03-01 19:57:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第十六届全国青少年信息学奥林匹克联赛初赛试题

( 提高组C 语言二小时完成)

●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●

一.单项选择题(共10题,每题1.5分,共计15分。每题有且仅有一个正确选项。)

1.与16进制数A1.2等值的10进制数是( )

A.101.2 B.111.4 C.161.125 D.177.25

2.一个字节(byte)由( )个二进制位组成。

A.8 B.16 C.32 D.以上都有可能

3.一下逻辑表达式的值恒为真的是( )

A.P∨(┐P∧Q)∨(┐P∧┐Q) B.Q∨(┐P∧Q)∨(P∨┐Q)

C.P∨Q∨(P∧┐Q)∨(┐P∧Q) D.P∨┐Q∨(P∧┐Q)∨(┐P∧┐Q)

4.Linux下可执行文件的默认扩展名为( )

A.exe B.com C.dll D.都不是

5.如果在某个进制下等式7*7=41成立,那么在该进制下等式12*12=( )也成立。

A.100 B.144 C.164 D.196

6.提出“存储程序”的计算机工作原理的是( )。

A.克劳德·香农 B.戈登·摩尔 C.查尔斯·巴比奇 D.冯·诺依曼

7.前缀表达式“+3*2+5 12”的值是( )

A.23 B.25 C.37 D.65

8.主存储器的存取速度比中央处理器(CPU)的工作速度慢很多,从而使得后者的效率受到影响。而根据局部性原理,CPU所访问的存储单元通常都趋于聚集在一个较小的连续区域中。于是,为了提高系统整体的执行效率,在CPU中引入了( )

A.寄存器 B.高速缓存 C.闪存 D.外存

9.完全二叉树的顺序存储方案,是指将完全二叉树的结点从上至下、从左至右一次存放到一个顺序结构的数组中。假定根结点存放在数组的1号位置,则第K号结点的父结点如果存在的话,应当存放在数组的( )号位置。

A.2k B.2k+1 C.k/2下取整 D.(k+1)/2下取整

10.一下竞赛活动中历史最悠久的是( )

A.全国青少年信息学奥林匹克联赛(NOIP)

B.全国青少年信息学奥林匹克竞赛(NOI)

C.国际信息学奥林匹克竞赛(IOI)

D.亚太地区信息学奥林匹克竞赛(APIO)

二.不定项选择题(共10题,每题1.5分,共计15分。每题有一个或多个正确选项。多选或少选均不得分。)

1.元素R1、R2、R3、R4、R5入栈的顺序为R1、R2、R3、R4、R5。如果第一个出栈的是R3,那么第五个出栈的可能是( )。

A.R1 B.R2 C.R4 D.R5

2.Pascal语言、C语言、和C++语言都属于( )

A.高级语言 B.自然语言 C.解释型语言 D.编译性语言

3.原地排序是指在排序过程中(除了存储待排序元素以外的)付诸空间的大小与数据规模无关的排序算法。一下属于原地排序的有( )

A.冒泡排序 B.插入排序 C.基数排序 D.选择排序

4.在整数的补码表示法中,以下说法正确的是( )

A.只有负整数的编码最高为1

B.在编码的位数确定后,所能表示的最小整数和最大整数的绝对值相同

C.整数0只有唯一的一个编码

D.两个用补码表示的数相加时,如果在最高位产生进位,则表示运算溢出

5.一颗二叉树的前序遍历序列是ABCDEFG,后序遍历序列是CBFEGDA,则根结点的左子树的结点个数可能是( )

A.0 B.2 C.4 D.6

6.在下列HTML语句中,可以正确产生一个指向NOI官方网站的超链接的是( )

A.

B.

C.http://www.noi.cn

D.

7.关于拓扑排序,下面说法正确的是( )

A.所有连通的有向图都可以实现拓扑排序

B.对同一个图而言,拓扑排序的结果是唯一的

C.拓扑排序中入度为0的结点总会排在入度大于0的结点的前面

D.拓扑排序结果序列中的第一个结点一定是入度为0的结点

8.一个平面的法线是指与该平面垂直的直线。过点(1,1,1)、(0,3,0)、(2,0,0)的平面的法线是( )

A.过点(1,1,1)、(2,3,3)的直线

B.过点(1,1,1)、(3,2,1)的直线

C.过点(0,3,0)、(-3,1,1)的直线

D.过点(2,0,0)、(5,2,1)的直线

9.双向链表中有两个指针域llink和rlink,分别指向该结点的前驱及后继。设p指向链表中的一个结点,它的左右结点均非空。现要求删除结点P,则下面语句序列中正确的是( )

A.p->rlink->llink = p->rlink;

p->llink->rlink = p->llink; free(p);

B.P->llink->rlink = p->rlink;

p->rlink->llnik = p->llink; free(p);

C.p->rlink->llink = p->llink;

p->rlink->llink->rlink = p->rlink; free(p);

D.p->llink->rlink = p->rlink;

p->llink->rlink->llink = p->llink; free(p);

10.今年(2010)发生的事件有( )

A.惠普实验室研究员Vinay Deolalikar自称证明了P≠NP

B.英特尔公司收购计算机安全软件公司迈克菲(McAfee)

C.苹果公司发布iPhone 4手机

D.微软公司发布Windows 7操作系统

四.阅读程序写结果(共4题,每题7分,共计28分) 1.

#include

#define SIZE 10

int main() {

int data[SIZE], i, j, cnt, n, m;

scanf(\

for(i = 1; i <= n; i++)

scanf(\

for(i = 1; i <= n; i++) {

cnt = 0;

for(j = 1; j<= n; j++)

if ((data[i] < data[j]) || (data[j] == data[i] && j< i))

cnt++;

if(cnt == m)

printf(\ }

getch(); (此语句在windows 2000以上系统用winTC编译C时需要加入,用以暂停查看屏幕)

return 0; }

输入: 5 2

96 -8 0 16 87

输出:

2.

#include #define SIZE 100

int main() {

int na, nb, a[SIZE], b[SIZE], i, j, k;

scanf(\ for (i = 1; i <= na; i++) scanf(\ scanf(\ for (i = 1; i <= nb; i++) scanf(\

i=1; j=1;

while ((i <= na) && (j <= nb)) { if (a[i] <= b[j]) { printf(\ i++; } else {

printf(\ j++; } }

if (i <= na)

for (k = i; k<= na; k++) printf(\ if (j <= nb)

for (k = j; k<= nb; k++) printf (\ getch(); return 0; }

输入:

5 1 3 5 7 9 4

2 6 10 14

输出:

CCF NOIP2010提高组(C语言)参考答案与评分标准

一、单项选择题(共10题,每题1.5分,共计15分) 1 C 2 A 3 A 4 D 5 B 6 D 7 C 8 B 9 C 10 B 二、不定项选择题(共10题,每题1.5分,共计15分,多选或少选均不得分) 1 ACD 2 AD 3 ABD 4 AC 5 B 6 B 7 D 8 D 9 BCD 10 ABC 三、问题求解(共3题,每题5分,共计15分) 1.yyxy xx yyxy xyx xx xyx 2.12 3.18

四、阅读程序写结果(共4题,每题7分,共计28分) 1.16

2.1 2 3 5 6 7 9 10 14 3.4

4.1 6 9 5 4 8 3 2 7

五、完善程序(第1空2分,其余10空,每空2.5分,共计27分) (说明:以下各程序填空可能还有一些等价的写法,各省可请本省专家审定和上机验证,不一定上报科学委员会审查)

1.① num <= 2(或num < 3 或num == 2)

② go(LEFT_TO_RIGHT)

③ pos[i] == LEFT(或LEFT == pos[i])

④ time[i] + go(RIGHT_TO_LEFT)(或go(RIGHT_TO_LEFT) + time[i])

⑤ pos[i] = LEFT

本小题中,LEFT可用1代替,LEFT_TO_RIGHT可用1代替,RIGHT_TO_LEFT可用0代替。 2.① opt[k]

② home[r] = k

③ j = i + i(或j = 2 * i 或j = i * 2) ④ swap(i, j)(或swap(j, i))

⑤ value[i] + heap[1](或heap[1] + value[i]) ⑥ i - m

本文来源:https://www.bwwdw.com/article/1xha.html

Top