NOIP2006普和组C++题目和答案解析

上传人:l****i 文档编号:265442224 上传时间:2022-03-13 格式:DOC 页数:6 大小:32.50KB
返回 下载 相关 举报
NOIP2006普和组C++题目和答案解析_第1页
第1页 / 共6页
NOIP2006普和组C++题目和答案解析_第2页
第2页 / 共6页
NOIP2006普和组C++题目和答案解析_第3页
第3页 / 共6页
NOIP2006普和组C++题目和答案解析_第4页
第4页 / 共6页
NOIP2006普和组C++题目和答案解析_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《NOIP2006普和组C++题目和答案解析》由会员分享,可在线阅读,更多相关《NOIP2006普和组C++题目和答案解析(6页珍藏版)》请在金锄头文库上搜索。

1、.第十二届全国青少年信息学奥林匹克联赛初赛试题2006普及组C+ 语言二小时完成全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效一、单项选择题共20题,每题1.5分,共计30分。每题有且仅有一个正确答案.1. 在下面各世界顶级的奖项中,为计算机科学与技术领域做出杰出贡献的科学家设立的奖项是。A. 沃尔夫奖B. 诺贝尔奖C. 菲尔兹奖D. 图灵奖2. 在下列各软件中,不属于NOIP竞赛复赛推荐使用的语言环境有。A. gcc/g+ B. Turbo Pascal C. RHIDED. free pascal 3. 以下断电之后仍能保存数据的有。A. 寄存器B. ROMC. RAM D. 高速缓

2、存4Linux是一种。A. 绘图软件B. 程序设计语言C. 操作系统D. 网络浏览器5. CPU是的简称。A. 硬盘B. 中央处理器C. 高级程序语言D. 核心寄存器6. 在计算机中,防火墙的作用是。A. 防止火灾蔓延B.防止网络攻击C. 防止计算机死机D. 防止使用者误删除数据7. 在下列关于计算机语言的说法中,不正确的是。A. Pascal和C都是编译执行的高级语言B. 高级语言程序比汇编语言程序更容易从一种计算机移植到另一种计算机上C. C+是历史上的第一个支持面向对象的计算机语言D. 与汇编语言相比,高级语言程序更容易阅读8. 在下列关于计算机算法的说法中,不正确的是。A. 一个正确的

3、算法至少要有一个输入B. 算法的改进,在很大程度上推动了计算机科学与技术的进步C. 判断一个算法的好坏的主要标准是算法的时间复杂性与空间复杂性D. 目前仍然存在许多涉及到国计民生的重大课题,还没有找到能够在计算机上实施的有效算法9. 在下列各种排序算法中,不是以比较作为主要操作的算法是。A. 选择排序B. 冒泡排序C. 插入排序D. 基数排序10在编程时使用任一种高级语言,不一定是C+,如果需要从磁盘文件中输入一个很大的二维数组例如1000*1000的double型数组,按行读即外层循环是关于行的与按列读即外层循环是关于列的相比,在输入效率上。A. 没有区别B. 按行读的方式要高一些C. 按列

4、读的方式要高一些D. 取决于数组的存储方式。11在C+ 中,表达式212的值是A. 441 B. 42 C.23 D.24 12在C+ 中,判断a不等于0且b不等于0的正确的条件表达式是A. !a=0 | !b=0 B. !& C. ! D. a & b 13某个车站呈狭长形,宽度只能容下一台车,并且只有一个出入口。已知某时刻该车站状态为空,从这一时刻开始的出入记录为:进,出,进,进,进,出,出,进,进,进,出,出。假设车辆入站的顺序为1,2,3,则车辆出站的顺序为。A. 1, 2, 3, 4, 5 B. 1, 2, 4, 5, 7 C. 1, 4, 3, 7, 6 D. 1, 4, 3, 7

5、, 2 14高度为n的均衡的二叉树是指:如果去掉叶结点及相应的树枝,它应该是高度为n-1的满二叉树。在这里,树高等于叶结点的最大深度,根结点的深度为0,如果某个均衡的二叉树共有2381个结点,则该树的树高为。A.10 B.11 C.12 D.13 15. 与十进制数1770 对应的八进制数是。A.3350 B.3351 C.3352 D.3540 16将5个数的序列排序,不论原先的顺序如何,最少都可以通过次比较,完成从小到大的排序。A. 6 B. 7 C. 8 D. 9 17. 设A=B=D=true,C=false,以下逻辑运算表达式值为真的有。A. B.C C. A D.D 18. 16

6、+ 8的结果是。A.10 B.16 C.8 2 19. 设栈S的初始状态为空,元素a, b, c, d, e 依次入栈,以下出栈序列不可能出现的有。A. a, b, c, e, d B. b, c, a, e, d C. a, e, c, b, d D. d, c, e, b, a 20. 已知6个结点的二叉树的先根遍历是1 2 3 4 5 6数字为结点的编号,以下同,后根遍历是3 2 5 6 4 1,则该二叉树的可能的中根遍历是A. 3 2 1 4 6 5 B. 3 2 1 5 4 6 C. 2 1 3 5 4 6 D. 2 3 1 4 6 5 二问题求解共2题,每题5分,共计10分1寻找假

7、币现有80枚硬币,其中有一枚是假币,其重量稍轻,所有真币的重量都相同,如果使用不带砝码的天平称重,最少需要称几次,就可以找出假币?你还要指出第1次的称重方法。请写出你的结果:_。2取石子游戏现有5堆石子,石子数依次为3,5,7,19,50,甲乙两人轮流从任一堆中任取每次只能取自一堆,不能不取, 取最后一颗石子的一方获胜。甲先取,问甲有没有获胜策略即无论乙怎样取,甲只要不失误,都能获胜?如果有,甲第一步应该在哪一堆里取多少?请写出你的结果:_。三阅读程序写结果共4题,每题8分,共计32分1. #include void main int i,u4,a,b,x,y=10; fori=0;i cin

8、 ui; a=/7; b=u0/u3; x=-u%4; if10 y+= /; else y+=20+/; cout x,yendl; / 注:本例中,给定的输入数据可以避免分母为0或下标越界。输入:9 3 9 4 输出:_ 2.#include void main int i,j,m=2,3,5,7,13; long t; for i=0;i t=1; forj=1;j t*=2; cout *t ; cout endl; 输出:_ 3. #include iostream.h #define N 7 int fun int j; j=n; whilea0 j-; return j; voi

9、d main char sN+1; int k; fork=1;k sk=A+2*k+1; cout funendl; 输出:_ 4. #include #include void digit if0 cout setwn%10; if1 digit; cout setwn%10; void main long x,x2; cout Input a number:x; x2=1; whilex2 x2*=10; x2/=10; digit; cout endl; 输入:9734526 输出:_ 四完善程序 1全排列下面程序的功能是利用递归方法生成从1到nn的n个数的全部可能的排列不一定按升序输

10、出。例如,输入3,则应该输出每行输出5个排列:123 132 213 231 321 312 程序:#include #include int n,a10; / a1,a2,an构成n个数的一个排列long count=0; / 变量count记录不同排列的个数,这里用于控制换行void perm int j,p,t; if count+; forp=1;p cout setwap; cout ; if cout endl; return; forj=k;j t=ak;ak=aj;aj=t; ; t=ak; ; void main int i; cout Entry n:n; fori=1;i

11、 ai=i; ; 2. 由键盘输入一个奇数P P,其个位数字不是5,求一个整数S,使PS = 1111.1 。要求在屏幕上依次输出以下结果: 1S 的全部数字。除最后一行外,每行输出50 位数字。2乘积的数字位数。例1:输入p=13,由于13*8547=111111,则应输出18547,26 例2:输入p=147,则输出结果应为1242,即等式的右端有42个1。程序:#include #include void main long p,a,b,c,t,n; while cout 输入p, 最后一位为1 或3 或7 或9:p; if & / 如果输入的数符合要求,结束循环; a=0; n=0; while a a=a*10+1; n+; / 变量a存放部分右端项,n为右端项的位数 t=0; do b=a/p; cout setwb; t+; if cout endl; c= ; a= ; n+; while 0; coutendln= endl; 参考答案一 选择题DBBCB BCADD CDCBC BBACB二 问题解答1. 4次1分第一步:分成3组:27,27,26,将前两组放在天平上4分2. 有获胜策略,第1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号