NOIP提高组C++初赛试题doc.docx
《NOIP提高组C++初赛试题doc.docx》由会员分享,可在线阅读,更多相关《NOIP提高组C++初赛试题doc.docx(15页珍藏版)》请在冰豆网上搜索。
NOIP提高组C++初赛试题doc
第二十二届全国青少年信息学奥林匹克联赛初赛
提高组C++语言试题
竞赛时间:
2016年10月22日14:
30~16:
30
选手注意:
●试题纸共有13页,答题纸共有2页,满分100分。
请在答题纸上作答,写
在试题纸上的一律无效。
●不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共15题,每题1.5分,共计22.5分;每题有且仅有一个正确选项)
1.以下不是微软公司出品的软件是()。
A.PowerpointB.Word
C.ExcelD.AcrobatReader
2.如果开始时计算机处于小写输入状态,现在有一只小老鼠反复按照CapsLock、字母键A、字母键S和字母键D的顺序来回按键,即CapsLock、A、S、D、S、A、CapsLock、A、S、D、S、A、CapsLock、A、S、D、S、A、……,屏幕上输出的第81个字符是字母()。
A.AB.SC.DD.A
3.二进制数00101100和01010101异或的结果是()。
A.00101000B.01111001C.01000100D.00111000
4.与二进制小数0.1相等的八进进制数是()。
A.0.8B.0.4C.0.2D.0.1
5.以比较作为基本运算,在N个数中找最小数的最少运算次数为()。
A.NB.N-1C.N2D.logN
6.表达式a*(b+c)-d的后缀表达形式为()。
A.abcd*+-B.abc+*d-C.abc*+d-D.-+*abcd
7.一棵二叉树如右图所示,若采用二叉树链表存储该二叉树(各个结点包括结点的数据、左孩子指针、右孩子指
针)。
如果没有左孩子或者右孩子,则对应的为空指针。
那么该链表中空指针的数目为()。
A.6B.7C.12D.14
8.G是一个非连通简单无向图,共有28条边,则该图至少有()个顶点。
A.10B.9C.8D.7
CCFNOIP2016初赛提高组C++语言试题第1页,共13页
9.某计算机的CPU和内存之间的地址总线宽度是32位(bit),这台计算机最多可以使用()的内存。
A.2GBB.4GBC.8GBD.16GB
10.有以下程序:
#includeusingnamespacestd;
intmain(){
intk=4,n=0;while(nn++;
if(n%3!
=0)continue;
k--;
}
cout<}
程序运行后的输出结果是()。
A.2,2B.2,3C.3,2D.3,3
11.有7个一模一样的苹果,放到3个一样的盘子中,一共有()种放法。
A.7B.8C.21D.37
12.Lucia和她的朋友以及朋友的朋友都在某社交网站上注册了账号。
下图是他们之间的关系图,两个人之间有边相连代表这两个人是朋友,没有边相连代表
不是朋友。
这个社交网站的规则是:
如果某人A向他(她)的朋友B分享了某张照片,那么B就可以对该照片进行评论;如果B评论了该照片,那么他(她)的所有朋友都可以看见这个评论以及被评论的照片,但是不能对该照
CCFNOIP2016初赛提高组C++语言试题第2页,共13页
片进行评论(除非A也向他(她)分享了该照片)。
现在Lucia已经上传了
一张照片,但是她不想让Jacob看见这张照片,那么她可以向以下朋友()分享该照片。
A.Dana,Michael,EveB.Dana,Eve,Monica
C.Michael,Eve,JacobD.Micheal,Peter,Monica
13.周末小明和爸爸妈妈三个人一起想动手做三道菜。
小明负责洗菜、爸爸负责切菜、妈妈负责炒菜。
假设做每道菜的顺序都是:
先洗菜10分钟,然后切菜10分钟,最后炒菜10分钟。
那么做一道菜需要30分钟。
注意:
两道不同的菜的相同步骤不可以同时进行。
例如第一道菜和第二道的菜不能同时洗,
也不能同时切。
那么做完三道菜的最短时间需要()分钟。
A.90B.60C.50D.40
14.假设某算法的计算时间表示为递推关系式
T(n)=2T(
)+
T
(1)=1
则算法的时间复杂度为()。
A.O(n)B.O(
)C.O(
logn)D.O(n2)
1.给定含有n个不同的数的数组L=。
如果L中存在xi(1xi+1>...>xn,则称L是单峰的,并称xi是L的
“峰顶”。
现在已知L是单峰的,请把a-c三行代码补全到算法中使得算法正确找到L的峰顶。
a.Search(k+1,n)
b.Search(1,k-1)
c.returnL[k]
Search(1,n)
1.k←[n/2]
2.ifL[k]>L[k-1]andL[k]>L[k+1]
3.then__________
4.elseifL[k]>L[k-1]andL[k]5.then__________
6.else__________
正确的填空顺序是()。
A.c,a,bB.c,b,aC.a,b,cD.b,a,c
二、不定项选择题(共5题,每题1.5分,共计7.5分;每题有一个或多个正确选项,多选或少选均不得分)
CCFNOIP2016初赛提高组C++语言试题第3页,共13页
1.以下属于无线通信技术的有()。
A.蓝牙B.WiFiC.GPRSD.以太网
2.可以将单个计算机接入到计算机网络中的网络接入通讯设备有()。
A.网卡B.光驱C.鼠标D.显卡
3.下列算法中运用分治思想的有()。
A.快速排序B.归并排序C.冒泡排序D.计数排序
4.下图表示一个果园灌溉系统,有A、B、C、D四个阀门,每个阀门可以打开或关上,所有管道粗细相同,以下设置阀门的方法中,可以让果树浇上水的
有水
有水
果树
有()。
A.B打开,其他都关上B.AB都打开,CD都关上
C.A打开,其他都关上D.D打开,其他都关上
5.参加NOI比赛,以下能带入考场的有()。
A.钢笔B.适量的衣服C.U盘D.铅笔
三、问题求解(共2题,每题5分,共计10分;每题全部答对得5分,没有部分分)
1.一个1×8的方格图形(不可旋转)用黑、白两种颜色填涂每个方格。
如果每个方格只能填涂一种颜色,且不允许两个黑格相邻,共有_________种填涂方案。
2.某中学在安排期末考试时发现,有7个学生要参加7门课程的考试,下表列出了哪些学生参加哪些考试(用√表示要参加相应的考试)。
最少要安排_________个不同的考试时间段才能避免冲突?
CCFNOIP2016初赛提高组C++语言试题第4页,共13页
考试
学生1
学生2
学生3
学生4
学生5
学生6
学生7
通用技术
√
√
√
物理
√
√
√
化学
√
√
生物
√
√
√
历史
√
√
√
地理
√
√
√
政治
√
√
四、阅读程序写结果(共4题,每题8分,共计32分)
1.#includeusingnamespacestd;
intmain(){
inta[6]={1,2,3,4,5,6};intpi=0;
intpj=5;intt,i;
while(pit=a[pi];
a[pi]=a[pj];
a[pj]=t;pi++;
pj--;
}
for(i=0;i<6;i++)cout<cout<}
输出:
_________
2.#includeusingnamespacestd;
intmain(){
chara[100][100],b[100][100];stringc[100];
stringtmp;
intn,i=0,j=0,k=0,total_len[100],length[100][3];
CCFNOIP2016初赛提高组C++语言试题
第5页,共13页
cin>>n;
getline(cin,tmp);
for(i=0;igetline(cin,c[i]);
total_len[i]=c[i].size();
}
for(i=0;ij=0;
while(c[i][j]!
=':
'){
a[i][k]=c[i][j];
k=k+1;
j++;
}
length[i][1]=k-1;
a[i][k]=0;
k=0;
for(j=j+1;jb[i][k]=c[i][j];
k=k+1;
}
length[i][2]=k-1;
b[i][k]=0;
k=0;
}
for(i=0;iif(length[i][1]>=length[i][2])
cout<<"NO,";
else{
k=0;
for(j=0;jif(a[i][k]==b[i][j])
k=k+1;
if(k>length[i][1])break;
}
if(j==length[i][2])
cout<<"NO,";
else
cout<<"YES,";
}
}
cout<return0;
CCFNOIP2016初赛提高组C++语言试题
第6页,共13页
}
输入:
3AB:
ACDEbFBkBDAR:
ACDBrT
SARS:
SevereAtypicalRespiratorySyndrome输出:
_________
(注:
输入各行前后均无空格)
3.#include