1、第二十一届全国青少年信息学奥林匹克联赛初赛提高组 C+语言试题竞赛时间: 2015 年 10 月 11 日 14:3016:30一、单项选择题(共 15 题,每题 1.5 分,共计 22.5 分;每题有且仅有一个正确选项)1 在计算机内部用来传送、存贮、加工处理的数据或指令都是以( )形式进行的。 A二进制码 B八进制码 C十进制码 D智能拼音码 2 下列说法正确的是( ) 。 ACPU 的主要任务是执行数据运算和程序控制 B存储器具有记忆能力,其中信息任何时候都不会丢失 C两个显示器屏幕尺寸相同,则它们的分辨率必定相同 D个人用户只能使用 Wifi 的方式连接到 Internet 3 与二进
2、制小数 0.1 相等的十六进制数是( ) 。 A0.8 B0.4 C 0.2 D0.1 4 下面有四个数据组,每个组各有三个数据,其中第一个数据为八进制数,第二个数据为十进制数,第三个数据为十六进制数。这四个数据组中三个数据相同的是( ) 。A 120 82 50 B144 100 68 C 300 200 C8 D1762 1010 3F2 5 线性表若采用链表存储结构,要求内存中可用存储单元地址( ) 。 A必须连续 B部分地址必须连续 C一定不连续 D连续不连续均可 6 今有一空栈 S,对下列待进栈的数据元素序列 a,b,c,d,e,f 依次进行进栈,进栈,出栈,进栈,进栈,出栈的操作,
3、则此操作完成后,栈 S 的栈顶元素为( ) 。 Af Bc C a Db 7 前序遍历序列与后序遍历序列相同的二叉树为( ) 。 A非叶子结点只有左子树的二叉树 B只有根结点的二叉树 C根结点无右子树的二叉树 D非叶子结点只有右子树的二叉树 8 如果根的高度为 1,具有 61 个结点的完全二叉树的高度为( ) 。 A5 B6 C 7 D8 9 6 个顶点的连通图的最小生成树,其边数为( ) 。 A6 B5 C 7 D4 10 设某算法的计算时间表示为递推关系式 T(n) = T(n - 1) + n(n 为正整数)及 T(0) = 1,则该算法的时间复杂度为( ) 。 AO(log n) BO
4、(n log n) C O(n) DO(n2) 11具有 n 个顶点,e 条边的图采用邻接表存储结构,进行深度优先遍历和广度优先遍历运算的时间复杂度均为( ) 。 A(n2) B(e2) C (ne) D(n + e) 12在数据压缩编码的应用中,哈夫曼(Huffman)算法是一种采用了( )思想的算法。A贪心 B分治 C递推 D回溯 13双向链表中有两个指针域,llink 和 rlink,分别指回前驱及后继,设 p 指向链表中的一个结点,q 指向一待插入结点,现要求在 p 前插入 q,则正确的插入为( ) 。 A p-llink = q; q-rlink = p; p-llink-rlink
5、 = q; q-llink = p-llink;B q-llink = p-llink; p-llink-rlink = q; q-rlink = p; p-llink = q-rlink; C q-rlink = p; p-rlink = q; p-llink-rlink = q; q-rlink = p; D p-llink-rlink = q; q-rlink = p; q-llink = p-llink; p-llink = q; 14对图 G 中各个结点分别指定一种颜色,使相邻结点颜色不同,则称为图 G 的一个正常着色。正常着色图 G 所必需的最少颜色数,称为 G 的色数。那么下图的
6、色数是( ) 。 A3 B4 C 5 D6 15在 NOI 系列赛事中参赛选手必须使用由承办单位统一提供的设备。下列物品中不允许选手自带的是( ) 。 A鼠标 B笔 C身份证 D准考证 二、不定项选择题(共 5 题,每题 1.5 分,共计 7.5 分;每题有一个或多个正确选项,多选或少选均不得分) 1 以下属于操作系统的有( ) 。 AWindows XP BUNIX C Linux DMac OS 2 下列属于视频文件格式的有( ) 。 AAVI BMPEG C WMV DJPEG 3 下列选项不是正确的 IP 地址的有( ) 。 A202.300.12.4 B192.168.0.3 C 1
7、00:128:35:91 D111-103-35-21 4 下列有关树的叙述中,叙述正确的有( ) 。 A在含有 n 个结点的树中,边数只能是(n-1) 条 B在哈夫曼树中,叶结点的个数比非叶结点个数多 1 C完全二叉树一定是满二叉树 D在二叉树的前序序列中,若结点 u 在结点 v 之前,则 u 一定是 v 的祖先 5 以下图中一定可以进行黑白染色的有( ) 。 (黑白染色:为各个结点分别指定黑白两种颜色之一,使相邻结点颜色不同。 ) A二分图 B完全图 C树 D连通图 三、问题求解(共 2 题,每题 5 分,共计 10 分;每题全部答对得 5 分,没有部分分)1 在 1 和 2015 之间(
8、包括 1 和 2015 在内)不能被 4 、 5、6 三个数任意一个数整除的数有_个。 2 结点数为 5 的不同形态的二叉树一共有_种。 (结点数为 2 的二叉树一共有 2种:一种是根结点和左儿子,另一种是根结点和右儿子。 ) 四、阅读程序写结果(共 4 题,每题 8 分,共计 32 分) 1#include using namespace std;struct point int x; int y; ; int main() struct EXint a; int b; point c; e; e.a = 1; e.b = 2; e.c.x = e.a + e.b;e.c.y = e.a *
9、 e.b; cout using namespace std; void fun(char *a, char *b)a = b; (*a)+; int main() char c1, c2, *p1, *p2;c1 = A;c2 = a; p1 = p2 = fun(p1, p2); cout #include using namespace std;int main() int len, maxlen;string s, ss; maxlen = 0; do cin ss; len = ss.length();if (ss0 = # )break; if (len maxlen) s = s
10、s; maxlen = len; while (true); cout using namespace std; int fun(int n, int fromPos, int toPos) int t, tot;if (n = 0) return 0; for (t = 1; t n; cout using namespace std;const int MAXN = 1000; int n, i, ans, sum; int xMAXN;int lmaxMAXN; / lmaxi为仅含 xi及 xi左侧整数的连续子序列的序列和中,最大的序列和int rmaxMAXN; / rmaxi为仅含
11、 xi及 xi右侧整数的连续子序列的序列和中,最大的序列和 int main() cin n; for (i = 0; i xi;lmax0 = x0; for (i = 1; i = 0; i-)if (rmaxi + 1 = 0; i-)if (rmaxi ans) ans = sum; cout using namespace std;const int MAXV = 100;int n, i, j, v; int wMAXVMAXV; / 邻接矩阵,记录边长 / 其中 wij为连接结点 i 和结点 j 的无向边长度,若无边则为-1int distMAXV; int usedMAXV; / 记录结点是否已扩展(0:未扩展;1 :已扩展) int main() cin n; for (i = 0; i wij;dist0 = 0; for (i = 1; i n; i+) disti = -1; for (i = 0; i n; i+) usedi = 0;while (true) _(1) _ for (i = 0; i n; i+) if (usedi != 1 _(4)_for (i = 0; i n; i+) if (wvi != -1 for (i = 0; i n; i+) cout disti endl;return 0;