ImageVerifierCode 换一换
格式:DOC , 页数:10 ,大小:219.50KB ,
资源ID:2492879      下载积分:8 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2492879.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(NOIP2016初赛普及组C++题目及标准答案.doc)为本站上传会员【精****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

NOIP2016初赛普及组C++题目及标准答案.doc

1、第二十二届全国青少年信息学奥林匹克联赛初赛 普及组 C++语言试题 竞赛时间:2016 年 10 月 22 日 14:30~16:30 选手注意: l 试题纸共有 9 页,答题纸共有 2 页,满分 100 分。请在答题纸上作答,写在 试题纸上的一律无效。 l 不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资 料。 一、单项选择题(共 20 题,每题 1.5 分,共计 30 分;每题有且仅有一个正确选 项) 1. 以下不是微软公司出品的软件是( )。 A. Powerpoint B. Word C. Excel D. Acrobat

2、 Reader 2. 如果 256 种颜色用二进制编码来表示,至少需要( )位。 A. 6 B. 7 C. 8 D. 9 3. 以下不属于无线通信技术的是( )。 A. 蓝牙 B. WiFi C. GPRS D. 以太网 4. 以下不是 CPU 生产厂商的是( )。 D. IBM A. Intel B. AMD C. Microsoft 5. 以下不是存储设备的是( )。 D. 鼠标 A. 光盘 B. 磁盘 C. 固态硬盘 6. 如果开始时计算机处于小写输入

3、状态,现在有一只小老鼠反复按照CapsLock、 字母键 A、字母键 S 和字母键 D 的顺序循环按键,即 CapsLock、A、S、D、 CapsLock、A、S、D、……,屏幕上输出的第 81 个字符是字母( )。 A. A B. S C. D D. a 7. 二进制数 00101100 和 00010101 的和是( )。 A. 00101000 B. 01000001 C. 01000100 D. 00111000 8. 与二进制小数 0.1 相等的八进制数是( )。 D. 0.1 A. 0.8 B.

4、 0.4 C. 0.2 CCF NOIP2016 初赛普及组 C++语言试题 第 1 页,共 9 页 10 / 10 9. 以下是 32 位机器和 64 位机器的区别的是( )。 A. 显示器不同 B. 硬盘大小不同 C. 寻址空间不同 D. 输入法不同 10. 以下关于字符串的判定语句中正确的是( )。 A. 字符串是一种特殊的线性表 B. 串的长度必须大于零 C. 字符串不可以用数组来表示 D. 空格字符组成的串就是空串 11. 一棵二叉树如右图所示,若采用顺序存储结构,即用一 维数组元素存储该二叉树中的结

5、点(根结点的下标为 1, 若某结点的下标为 i ,则其左孩子位于下标 2i 处、右孩 子位于下标(2i+1)处),则图中所有结点的最大下标为 ( )。 A. 6 B. 10 C. 12 D. 15 12. 若有如下程序段,其中 s、a、b、c 均已定义为整型变量,且 a、c 均已赋值 (c 大于 0)。 s = a; for (b = 1; b <= c; b++) s = s + 1; 则与上述程序段修改 s 值的功能等价的赋值语句是( )。 A. s = a + b; B. s = a + c; C. s = s + c; D. s = b + c; 13. 有以下程序

6、 #include using namespace std; int main() { int k = 4, n = 0; while (n < k) { n++; if (n % 3 != 0) continue; k--; } cout << k << "," << n << endl; return 0; } 程序运行后的输出结果是( )。 A. 2,2 B. 2,3 C. 3,2 D. 3,3 14. 给定含有 n 个不同的数的数组 L=。如果 L 中存在 x(i1 < i < n) 使得

7、 x1 < x2 < ... < xi -1 < xi > xi+1 > ... > xn , 则称 L 是单峰的,并称 xi 是 L 的 CCF NOIP2016 初赛普及组 C++语言试题 第 2 页,共 9 页 “峰顶”。现在已知 L 是单峰的,请把 a-c 三行代码补全到算法中使得算法 正确找到 L 的峰顶。 a. Search(k+1, n) b. Search(1, k-1) c. return L[k] Search(1, n) 1. k<-[n/2] 2. if L[k] > L[k-1] and L[k] > L[k+1] 3. then _______

8、 4. else if L[k] > L[k-1] and L[k] < L[k+1] 5. then __________ 6. else __________ 正确的填空顺序是( )。 A. c, a, b B. c, b, a C. a, b, c D. b, a, c 15. 设简单无向图 G 有 16 条边且每个顶点的度数都是 2,则图 G 有( )个顶 点。 A. 10 B. 12 C. 8 D. 16 16. 有 7 个一模一样的苹果,放到 3 个一样的盘子中,一共有( )种放法。

9、 A. 7 B. 8 C. 21 D. 37 17. 下图表示一个果园灌溉系统,有 A、B、C、D 四个阀门,每个阀门可以打开 或关上,所有管道粗细相同,以下设置阀门的方法中,可以让果树浇上水的 有水 有水 果树 是( )。 A. B 打开,其他都关上 B. AB 都打开,CD 都关上 C. A 打开,其他都关上 D. D 打开,其他都关上 CCF NOIP2016 初赛普及组 C++语言试题 第 3 页,共 9 页 18. Lucia 和她的朋友以及朋友的朋友都在某社交网站上注册了

10、账号。下图是他 们之间的关系图,两个人之间有边相连代表这两个人是朋友,没有边相连代 表不是朋友。这个社交网站的规则是:如果某人 A 向他(她)的朋友 B 分 享了某张照片,那么 B 就可以对该照片进行评论;如果 B 评论了该照片,那 么他(她)的所有朋友都可以看见这个评论以及被评论的照片,但是不能对 该照片进行评论(除非 A 也向他(她)分享了该照片)。现在 Lucia 已经上 传了一张照片,但是她不想让 Jacob 看见这张照片,那么她可以向以下朋友 ( )分享该照片。 A. Dana, Michael, Eve B. Dana, Eve, Monica C. Mich

11、ael, Eve, Jacob D. Micheal, Peter, Monica 19. 周末小明和爸爸妈妈三个人一起想动手做三道菜。小明负责洗菜、爸爸负责 切菜、妈妈负责炒菜。假设做每道菜的顺序都是:先洗菜 10 分钟,然后切 菜 10 分钟,最后炒菜 10 分钟。那么做一道菜需要 30 分钟。注意:两道不 同的菜的相同步骤不可以同时进行。例如第一道菜和第二道的菜不能同时洗, 也不能同时切。那么做完三道菜的最短时间需要( )分钟。 A. 90 B. 60 C. 50 D. 40 20. 参加 NOI 比赛,以下不能带入考场的是( )。 A. 钢笔

12、 B. 适量的衣服 C. U 盘 D. 铅笔 二、问题求解(共 2 题,每题 5 分,共计 10 分;第一题全部答对得 5 分,没有 部分分;第二题第一空 2 分,第二空 3 分) 1. 从一个 4×4 的棋盘(不可旋转)中选取不在同一行也不在同一列上的两个 方格,共有_________种方法。 CCF NOIP2016 初赛普及组 C++语言试题 第 4 页,共 9 页 2. 约定二叉树的根节点高度为 1。一棵结点数为 2016的二叉树最少有 _________个叶子结点;一棵结点数为 2016的二叉树最小的高度值是 _________。 三、阅读程序写结果(共

13、 4 题,每题 8 分,共计 32 分) 1. #include using namespace std; int main() { int max, min, sum, count = 0; int tmp; cin >> tmp; if (tmp == 0) return 0; max = min = sum = tmp; count++; while (tmp != 0) { cin >> tmp; if (tmp != 0) { sum += tmp; count++; if (tmp > max) max = tmp; if (tm

14、p < min) min = tmp; } } cout << max << "," << min << "," << sum / count << endl; return 0; } 输入: 1 2 3 4 5 6 0 7 输出:_________ 2. #include using namespace std; int main() { CCF NOIP2016 初赛普及组 C++语言试题 第 5 页,共 9 页 int i = 100, x = 0, y = 0; while (i > 0) { i--; x = i % 8; if (x

15、 == 1) y++; } cout << y << endl; return 0; } 输出:_________ 3. #include using namespace std; int main() { int a[6] = {1, 2, 3, 4, 5, 6}; int pi = 0; int pj = 5; int t , i; while (pi < pj) { t = a[pi]; a[pi] = a[pj]; a[pj] = t; pi++; pj--; } for (i = 0; i < 6; i++) cout << a[i] <

16、< ","; cout << endl; return 0; } 输出:_________ 4. #include using namespace std; int main() { int i, length1, length2; string s1, s2; s1 = "I have a dream."; CCF NOIP2016 初赛普及组 C++语言试题 第 6 页,共 9 页 s2 = "I Have A Dream."; length1 = s1.size(); length2 = s2.size(); for (i = 0; i <

17、length1; i++) if (s1[i] >= 'a' && s1[i] <= 'z') s1[i] -= 'a' - 'A'; for (i = 0; i < length2; i++) if (s2[i] >= 'a' && s2[i] <= 'z') s2[i] -= 'a' - 'A'; if (s1 == s2) cout << "=" << endl; else if (s1 > s2) cout << ">" << endl; else cout << "<" << endl; return 0; } 输出:_________ 四、完善程序(共 2 题,

18、每题 14 分,共计 28 分) 1. (读入整数)请完善下面的程序,使得程序能够读入两个 int 范围内的整数, 并将这两个整数分别输出,每行一个。(第一、五空 2.5 分,其余 3 分) 输入的整数之间和前后只会出现空格或者回车。输入数据保证合法。 例如: 输入: 123 -789 输出: 123 -789 #include using namespace std; int readint() { int num = 0; // 存储读取到的整数 int negative = 0; // 负数标识 char c; // 存储当前读取到的字

19、符 c = cin.get(); while ((c < '0' || c > '9') && c != '-') c = (1) ; CCF NOIP2016 初赛普及组 C++语言试题 第 7 页,共 9 页 if (c == '-') negative = 1; else (2) ; c = cin.get(); while ( (3) ) { (4) ; c = cin.get(); } if (negative == 1) (5) ; return num; } int main() { int a, b; a = r

20、eadint(); b = readint(); cout << a << endl << b << endl; return 0; } 2. (郊游活动)有 n 名同学参加学校组织的郊游活动,已知学校给这 n 名同学 的郊游总经费为 A 元,与此同时第 i 位同学自己携带了 Mi 元。为了方便郊 游,活动地点提供 B(≥n)辆自行车供人租用,租用第 j 辆自行车的价格为 Cj 元,每位同学可以使用自己携带的钱或者学校的郊游经费,为了方便账务管 理,每位同学只能为自己租用自行车,且不会借钱给他人,他们想知道最多 有多少位同学能够租用到自行车。(第四、五空 2.5 分,其余 3 分) 本

21、题采用二分法。对于区间[l, r],我们取中间点 mid 并判断租用到自行 车的人数能否达到 mid。判断的过程是利用贪心算法实现的。 #include using namespace std; #define MAXN 1000000 int n, B, A, M[MAXN], C[MAXN], l, r, ans, mid; bool check(int nn) { int count = 0, i, j; i = (1) ; j = 1; while (i <= n) { if ( (2) ) CCF NOIP2

22、016 初赛普及组 C++语言试题 第 8 页,共 9 页 count += C[j] - M[i]; i++; j++; } return (3) ; } void sort(int a[], int l, int r) { int i = l, j = r, x = a[(l + r) / 2], y; while (i <= j) { while (a[i] < x) i++; while (a[j] > x) j--; if (i <= j) { y = a[i]; a[i] = a[j]; a[j] = y; i++; j--;

23、 } } if (i < r) sort(a, i, r); if (l < j) sort(a, l, j); } int main() { int i; cin >> n >> B >> A; for (i = 1; i <= n; i++) cin >> M[i]; for (i = 1; i <= B; i++) cin >> C[i]; sort(M, 1, n); sort(C, 1, B); l = 0; r = n; while (l <= r) { mid = (l + r) / 2; if ( (4) ) { ans = mid; l = mi

24、d + 1; } else r = (5) ; } cout << ans << endl; return 0; } CCF NOIP2016 初赛普及组 C++语言试题 第 9 页,共 9 页 第二十二届全国青少年信息学奥林匹克联赛初赛 普及组参考答案 一.选择题 DCDCD CBBCA DBDAD BAACC 二.问题求解 1. 72 2. 1(2分) 11(3分) 三.阅读程序写结果 1. 6,1,3 2. 13 3. 6,5,4,3,2,1, 4. = 四.完善程序 1. (1)cin.get() (2)num=c-‘0’ 或 num=c-48 (3)c>=’0’&&c<=’9’ 或 c>=48&&c<=57 (4) num=num*10+c-'0' 或 num=num*10+c-48 (5) num=-num 或 return-num 2. (1) n-nn+1 (2) M[i]

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服