ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:18.20KB ,
资源ID:5871707      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

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

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

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(试题1提高组C++试题及答案.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

试题1提高组C++试题及答案.docx

1、试题1提高组C+试题及答案试题一提高组 C+语言一、单项选择题(共 10 题,每题 2 分,共计 20 分;每题有且仅有一个正确选项)1. 下列四个不同进制的数中,与其它三项数值上不相等的是()。A. (269)16B. (617)10C. (1151)8D. (1001101011)22. 下列属于解释执行的程序设计语言是()。A. CB. C+C. PascalD. Python3. 中国计算机学会于()年创办全国青少年计算机程序设计竞赛。A. 1983B. 1984C. 1985D. 19864. 设根节点深度为 0,一棵深度为 h 的满 k(k1)叉树,即除最后一层无任何子节点外,每一

2、层上的所有结点都有 k 个子结点的树,共有()个结点。A. (k h+1 - 1) / (k - 1)B. k h-1C. k hD. (k h-1 ) / (k - 1)5. 设某算法的时间复杂度函数的递推方程是 T(n) = T(n - 1) + n(n 为正整数)及 T(0) = 1,则该算法的时间复杂度为()。A. O(log n)B. O(n log n)C. O(n)D. O(n2 )6. 表达式 a * d - b * c 的前缀形式是()。A. a d * b c * -B. - * a d * b cC. a * d - b * cD. - * * a d b c7. 在一条

3、长度为 1 的线段上随机取两个点,则以这两个点为端点的线段的期望长度是()。A. 1 / 2B. 1 / 3C. 2 / 3D. 3 / 58. 关于 Catalan 数 Cn = (2n)! / (n + 1)! / n!,下列说法中错误的是()。A. Cn 表示有 n + 1 个结点的不同形态的二叉树的个数。B. Cn 表示含 n 对括号的合法括号序列的个数。C. Cn 表示长度为 n 的入栈序列对应的合法出栈序列个数。D. Cn 表示通过连接顶点而将 n + 2 边的凸多边形分成三角形的方法个数。9. 假设一台抽奖机中有红、蓝两色的球,任意时刻按下抽奖按钮,都会等概率获得红球或蓝球之一。

4、有足够多的人每人都用这台抽奖机抽奖,假如他们的策略均为:抽中蓝球则继续抽球,抽中红球则停止。最后每个人都把自己获得的所有球放到一个大箱子里,最终大箱子里的红球与蓝球的比例接近于()。A. 1 : 2B. 2 : 1C. 1 : 3D. 1 : 110. 为了统计一个非负整数的二进制形式中 1 的个数,代码如下:int CountBit(int x)int ret = 0;while (x)ret+;_;return ret;则空格内要填入的语句是()。A. x = 1B. x &= x - 1C. x |= x 1D. x = 1二、不定项选择题(共 5 题,每题 2 分,共计 10 分;每题

5、有一个或多个正确选项,多选或少选均不得分)1. NOIP 初赛中,选手可以带入考场的有()。A. 笔B. 橡皮C. 手机(关机)D. 草稿纸2. 2-3 树是一种特殊的树,它满足两个条件:(1)每个内部结点有两个或三个子结点;(2)所有的叶结点到根的路径长度相同。如果一棵 2-3 树有 10 个叶结点,那么它可能有()个非叶结点。A. 5B. 6C. 7D. 83. 下列关于最短路算法的说法正确的有()。A. 当图中不存在负权回路但是存在负权边时,Dijkstra 算法不一定能求出源点到所有点的最短路。B. 当图中不存在负权边时,调用多次 Dijkstra 算法能求出每对顶点间最短路径。C.

6、图中存在负权回路时,调用一次 Dijkstra 算法也一定能求出源点到所有点的最短路。D. 当图中不存在负权边时,调用一次 Dijkstra 算法不能用于每对顶点间最短路计算。4. 下列说法中,是树的性质的有()。A. 无环B. 任意两个结点之间有且只有一条简单路径C. 有且只有一个简单环D. 边的数目恰是顶点数目减 15. 下列关于图灵奖的说法中,正确的有()。A. 图灵奖是由电气和电子工程师协会(IEEE)设立的。B. 目前获得该奖项的华人学者只有姚期智教授一人。C. 其名称取自计算机科学的先驱、英国科学家艾伦麦席森图灵。D. 它是计算机界最负盛名、最崇高的一个奖项,有“计算机界的诺贝尔奖

7、”之称。三、问题求解(共 2 题,每题 5 分,共计 10 分)1. 甲乙丙丁四人在考虑周末要不要外出郊游。已知如果周末下雨,并且乙不去,则甲一定不去;如果乙去,则丁一定去;如果丙去,则丁一定不去;如果丁不去,而且甲不去,则丙一定不去。如果周末丙去了,则甲_(去了/没去)(1 分),乙_(去了/没去)(1 分),丁_(去了/没去)(1 分),周末_(下雨/没下雨)(2 分)。2. 方程 a*b = (a or b) * (a and b),在 a,b 都取 0, 31 中的整数时,共有_组解。(*表示乘法;or 表示按位或运算;and 表示按位与运算)四、阅读程序写结果(共 4 题,每题 8

8、分,共计 32 分)1.#include int main() int x;scanf(%d, &x);int res = 0;for (int i = 0; i x; +i) if (i * i % x = 1) +res;printf(%d, res);return 0;输入:15输出:_2.#include int n, d100;bool v100;int main() scanf(%d, &n);for (int i = 0; i n; +i) scanf(%d, d + i);vi = false;int cnt = 0;for (int i = 0; i n; +i) if (!

9、vi) for (int j = i; !vj; j = dj) vj = true;+cnt;printf(%dn, cnt);return 0;输入: 10 7 1 4 3 2 5 9 8 0 6输出:_3.#include using namespace std;string s;long long magic(int l, int r) long long ans = 0;for (int i = l; i s;int len = s.length();int ans = 0;for (int l1 = 0; l1 len; +l1) for (int r1 = l1; r1 len;

10、 +r1) bool bo = true;for (int l2 = 0; l2 len; +l2) for (int r2 = l2; r2 len; +r2) if (magic(l1, r1)=magic(l2, r2) &(l1!=l2 | r1!=r2) bo = false;if (bo) ans += 1;cout ans endl;return 0;输入:abacaba输出:_4.#include using namespace std;const int N = 110;bool isUseN;int n, t;int aN, bN;bool isSmall() for (i

11、nt i = 1; i = n; +i)if (ai != bi) return ai n) return isSmall();for (int i = 1; i = n; +i) if (!isUsei) bpos = i; isUsei = true;if (getPermutation(pos + 1) return true;isUsei = false;return false;void getNext() for (int i = 1; i = n; +i) isUsei = false;getPermutation(1);for (int i = 1; i = n; +i) ai

12、 = bi;int main() scanf(%d%d, &n, &t);for (int i = 1; i = n; +i) scanf(%d, &ai);for (int i = 1; i = t; +i) getNext();for (int i = 1; i = n; +i) printf(%d, ai);if (i = n) putchar(n); else putchar( );return 0;输入1:6 10 1 6 4 5 3 2输出1:_(3分)输入2:6 200 1 5 3 4 2 6输出2:_(5分)五、完善程序(共共 2 题,每题 14 分,共计 28 分)1. 对于

13、一个1到n的排列P(即1到n中每一个数在P中出现了恰好一次),令q i为第个位置之后第一个比P i值更大的位置,如果不存在这样的位置,则q i=n +1。举例来说,如果n = 5且P为1 5 4 2 3,则P为2 6 6 5 6。下列程序读入了排列P,使用双向链表求解了答案。试补全程序。(第二空2 分,其余 3 分)数据范围 1 n 105。#include using namespace std;const int N = 100010;int n;int LN, RN, aN;cin n;for (int i = 1; i x;for (int i = 1; i = n; +i) Li =

14、 i - 1;for (int i = 1; i = n; +i) for (int i = 1; i = n; +i) cout endl;return 0;2. 一只小猪要买 N 件物品(N 不超过 1000)。它要买的所有物品在两家商店里都有卖。第 i 件物品在第一家商店的价格是ai,在第二家商店的价格是 bi,两个价格都不小于 0 且不超过 10000。如果在第一家商店买的物品的总额于不少于 50000,那么在第一家店买的物品都可以打 95 折(价格变为原来的 0.95 倍)。求小猪买齐所有物品所需最少的总额。输入:第一行一个数 N。接下来 N 行,每行两个数。第 i 行的两个数分别代

15、表 ai,bi。输出:输出一行一个数,表示最少需要的总额,保留两位小数。试补全程序。(第一空 2 分,其余 3 分)#include #include using namespace std;const int Inf = 1000000000;const int threshold = 50000;const int maxn = 1000;int n, amaxn, bmaxn;bool put_amaxn;int total_a, total_b;double ans;int fthreshold;scanf(%d, &n);total_a = total_b = 0;for (int

16、i = 0; i n; +i) scanf(%d%d, a + i, b + i);if (ai = bi) total_a += ai;else total_b += bi;ans = total_a + total_b;total_a = total_b = 0;for (int i = 0; i n; +i) put_ai = true;total_a += ai; else put_ai = false;total_b += bi;printf(%.2f, total_a * 0.95 + total_b);return 0;f0 = 0;for (int i = 1; i threshold; +i)fi = Inf;int total_b_prefix = 0;for (int i = 0; i = 0; -j) printf(%.2f, ans);return 0;参考答案二、不定项选择题(共5 题,每题2 分,共计10 分;每题有一个或多个正确选项,没有部分分)三、问题求解(共2题,每题5分,共计10分)1. 去了没去没去没下雨(第4 空2分,其余1分)2. 454四、阅读程序写结果(共4题,每题8分,共计32 分)1. 42. 63. 164. 输出1: 2 1 3 5 6 4 (3 分)输出2: 3 2 5 6 1 4 (5 分)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1