当前位置:首页 >> 学科竞赛 >>

noip2015 初赛普及组C++试题及参考答案

Noip 2015 初赛普及组 C++试题

第二十一届全国青少年信息学奥林匹克联赛初赛
普及组 C++语言试题 竞赛时间:2015 年 10 月 11 日 14:30-16:30 一、单项选择题(共 20 题,每题 1.5 分,共计 30 分;每题有且仅有一个正确选项) 1. 1MB 等于( )。 A.10000 字节 B.1024 字节 C.1000×1000 字节 D.1024×1024 字节 2. 在 PC 机中,PENTIUM(奔腾)、酷睿、赛扬等 是指( )。 A.生产厂家名称 B.硬盘的型号 C.CPU 的型号 D.显示器的型号 3. 操作系统的作用是( )。 A.把源程序译成目标程序 B.便于进行数据管理 C.控制和管理系统资源D.实现硬件 之间的连接 4. 在计算机内部用来传送、存贮、加工处理的数据或指令都是以( )形式进行的。 A.二进制码 B.八进制码 C.十进制码 D.智能拼音码 5. 下列说法正确的是( )。 A.CPU 的主要任务是执行数据运算和程序控制 B.存储器具有记忆能力,其中信息任何时候都不会丢失 C.两个显示器屏幕尺寸相同,则它们的分辨率必定相同 D.个人用户只能使用 Wifi 的方式连接到 Internet 6. 二进制数 00100100 和 00010100 的和是( )。 A.00101000 B.01100111 C.0100010 D.00111000 7. 与二进制小数 0.1 相等的十六进制数是( )。 A.0.8 B.0.4 C.0.2 D.0.1 8. 所谓的“中断”是指( )。 A.操作系统随意停止一个程序的运行 B.当出现需要时,CPU 暂时停止当前程序的执行转而执行处理新情况的过程 C.因停机而停止一个程序的运行 D.电脑死机 9. 计算机病毒是( )。 A.通过计算机传播的危害人体健康的一种病毒 B.人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合 C.一种由于计算机元器件老化而产生的对生态环境有害的物质 D.利用计算机的海量高速运算能力而研制出来的用于疾病预防的新型病毒 10. FTP 可以用于( )。 A.远程传输文件 B.发送电子邮件 C.浏览网页 D.网上聊天 11. 下面哪种软件不属于即时通信软件( )。 A.QQ B.MSN C.微信 D.P2P 12. 6 个顶点的连通图的最小生成树,其边数为( )。 A.6 B.5 C.7 D.4 13. 链表不具备的特点是( )。 A.可随机访问任何一个元素 B.插入、删除操作不需要移动元素 C.无需事物估计存储空间大小 D.所需存储空间与存储元素个数成正比 14. 线性表若采用链表存储结构,要求内存中可用存储单元地址( )。 A.必须连续 B.部分地址必须连续 C.一定不连续 D.连续不连续均可 15. 今有一空栈 S,对下列待进栈的数据元素序列 a,b,c,d,e,f 依次进行进栈, 进栈,出栈,进栈, 进栈,出栈的操作,则此操作完成后,栈 S 的栈顶元素为
1/6

Noip 2015 初赛普及组 C++试题

A.f B.c C.a D.b 16. 前序遍历序列与中序遍历序列相同的二叉树为( )。 A.根结点无左子树 B.根结点无右子树 C.只有根结点的二叉树或非叶子结点只有左子树的二叉树 D.只有根结点的二叉树或非叶子结点只有右子树的二叉树 17. 如果根的高度为 1,具有 61 个结点的完全二叉树的高度为( )。 A.5 B.6 C.7 D.8 18. 下列选项中不属于视频文件格式的是( )。 A.TXT B.AVI C.MOV D.RMVB 19. 设某算法的计算时间表示为递推关系式 T(n)=T(n-1)+n(n 为正整数)及 T(0)=1,则 该算法的时间复 杂度为( )。 A.O(logn) B.O(nlogn) C.O(n) D.O(n2) 20. 在 NOI 系列赛事中参赛选手必须使用累承办单位统一提供的设备。下列物品中不允许 选手自带的是( )。 A.鼠标 B.笔 C.身份证 D.准考证
二、问题求解(共 2 题,每题 5 分,共计 10 分;每题全部答对得 5 分,没有部分分) ⒈重新排列 1234 使得每一个数字都不在原来的位置上,一共有 ⒉一棵结点数为 2015 的二叉树最多有 三、阅读程序写结果(共 4 题,每题 8 分,共计 32 分) ⒈ #include <iostream> using namespace std; int main() { int a, b, c; a = 1; b = 2; c = 3; if(a > b) if(a > c) cout << a << ' '; else cout << b << ' '; cout << c << endl; return 0; } 输出:
2/6

种排法。

个叶子结点。

Noip 2015 初赛普及组 C++试题

⒉ #include <iostream> using namespace std; struct point { int x; int y; }; int main() { int a, b, c; struct EX { int a; int b; point c; } e; e.a = 1; e.b = 2; e.c.x = e.a + e.b; e.c.y = e.a * e.b; cout << e.c.x << ',' << e.c.y << endl; return 0; } 输出: ⒊ #include <iostream> #include <string> using namespace std; int main() { string str; int i; int count; count = 0; getline(cin, str);
3/6

Noip 2015 初赛普及组 C++试题

for(i = 0; i < str.length(); i++) if(str[i] >= 'a' && str[i] <= 'z') count++; cout << "It has " << count << " lowercases" << endl; return 0; } 输入:NOI2016 will be held in Mian Yang. 输出: ⒋

#include <iostream> #include <string> using namespace std; void fun(char *a, char *b) { a = b; (*a)++; } int main() { char c1, c2, *p1, *p2; c1 = 'A'; c2 = 'a'; p1 = &c1; p2 = &c2; fun(p1, p2); cout << c1 << c2 << endl; return 0; }
输出:

四、完善程序(共 2 题,每题 14 分,共计 28 分) ⒈(打印月历 )输入月份 m(1≤m≤12),按一定格式打印 2015 年第 m 月的月历。(第 三、四空 2.5 分, 其余 3 分)
4/6

Noip 2015 初赛普及组 C++试题

例如,2015 年 1 月的月历打印效果如下(第一列为周日):

S 4

M 5

T 6

W 7

T 1 8

F 2 9

S 3 10

11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
#include <iostream> #include <string> using namespace std; const int dayNum[] = {-1, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int m, offset, i; int main() { cin >> m; cout << "S\tM\tT\tW\tT\tF\tS" << endl; //'\t'为 TAB 制表符 ⑴ ; //(1) for(i = 1; i < m; i++) offset = ⑵ ; //(2) for(i = 0; i < offset; i++) cout << '\t'; for(i = 1; i <= ⑶ ; i++) //(3) { cout << ⑷ ; //(4) if(i == dayNum[m] || ⑸ == 0) //(5) cout << endl; else cout << '\t'; } return 0; }

⒉(中位数 median)给定 n(n 为奇数且小于 1000)个整数,整数的范围在

0~m(0<m<2^31)之间,请使用二分法求这 n 个整数的中位数。所谓中位数,是指将这 n 个数排序之后,排在正中间的数。(第五空 2 分,其余 3 分)
5/6

Noip 2015 初赛普及组 C++试题

#include <iostream> using namespace std; const int MAXN = 1000; int n, i, lbound, rbound, mid, m, count; int x[MAXN]; int main() { cin >> n >> m; for(i = 0; i < n; i++) cin >> x[i]; lbound = 0; rbound = m; while( ⑴ ) { mid = (lbound + rbound) / 2; ⑵ ; for(i = 0; i < n; i++) if( ⑶ ) ⑷ ; if(count > n / 2) lbound = mid + 1; else ⑸ ; cout << mid << " " << lbound << " " << rbound << " " << count << endl; } cout << rbound << endl; return 0; }

第二十一届全国青少年信息学奥林匹克联赛初赛普及组 C++语言试题参考答案
一、单项选择题(共 20 题,每题 1.5 分,共计 30 分;每题有且仅有一个正确选项) ⒈ D ⒉C ⒊C ⒋A ⒌A ⒍D ⒎A ⒏B ⒐B ⒑A ⒒D ⒓B ⒔A ⒕D ⒖B ⒗D ⒘B ⒙A ⒚D ⒛A 二、问题求解(共 2 题,每题 5 分,共计 10 分;每题全部答对得 5 分,没有部分分) ⒈9 ⒉1008 三、阅读程序写结果(共 4 题,每题 8 分,共计 32 分) ⒈ 3 ⒉3,2 ⒊It has 18 lowercases ⒋Ab 四、完善程序(共 2 题,每题 14 分,共计 28 分) ⒈(第三、四空 2.5 分,其余 3 分) ⑴ offset=4 ⑵(offset+dayNum[i])%7 ⑶dayNum[m] ⑷i ⑸(offset+i) % 7 ⒉(第五空 2 分,其余 3 分) ⑴ lbound <= rbound) ⑵count = 0 ⑶x[i] >= mid) ⑷count++ ⑸rbound = mid - 1
6/6


相关文章:
NOIP2015信息学奥赛普及组初赛C++试题
NOIP2015信息学奥赛普及组初赛C++试题_学科竞赛_初中教育_教育专区。NOIP2016信息学奥赛普及组初赛C++试题 2015 年第二十一届全国青少年信息学奥林匹克联赛初赛 普及...
NOIP2015提高组C++试题
NOIP2015提高组C++试题_电子/电路_工程科技_专业资料。第二十一届全国青少年信息学奥林匹克联赛初赛提高组C++语言试题 竞赛时间:2015 年10 月11 日14:30~16:30 ...
NOIP2015普及组复赛试题解题报告word版第一二题满...
NOIP2015普及组复赛试题解题报告word版第一二题满分程序_学科竞赛_初中教育_教育...(过滤行末空格及文末回车) 二.提交源程序文件名对于 C++语言 对于 C 语言 ...
NOIP2015普及组解题报告
观察题意可以得知,如果第 i 位第 j 位同色,...附 C++代码(不知道为何 vijos 总 60,于是搬了 AC...NOIP2015普及组复赛试题... 6页 1下载券 noip2015...
2015年NOIP提高组初赛(C++)
2015NOIP提高组初赛(C++)_学科竞赛_高中教育_教育专区。第二十一届全国青少年信息学奥林匹克联赛初赛提高组 C++语言试题一、单项选择题(共 15 题,每题 1.5 分...
NOIP2015提高组复赛试题Day1
NOIP2015提高组复赛试题Day1_学科竞赛_高中教育_教育...提交源程序文件名 对于C++语言 magic.cpp 对于C语言...需要注意的是,本题中游戏者每次可以出手的牌型与...
第二十一届(2015)全国青少年信息学奥林匹克联赛初...
第二十一届(2015)全国青少年信息学奥林匹克联赛初赛试题(含答案)_学科竞赛_高中教育_教育专区。第二十一届全国青少年信息学奥林匹克联赛初赛 普及组 Pascal 语言...
更多相关标签: