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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

noip初赛普及组C++试题 及答案Word文档格式.docx

1、A. 硬盘 B.高速缓存 C.显存 D. RAM11. 在下列关于计算机语言的说法中,正确的有()。A. 高级语言比汇编语言更高级,是因为它的程序的运行效率更高B. 随着 Pascal、C 等高级语言的出现,机器语言和汇编语言已经退出了历史舞台C. 高级语言程序比汇编语言程序更容易从一种计算机移植到另一种计算机上D. C 是一种面向对象的高级计算机语言12. 近 20 年来,许多计算机专家都大力推崇递归算法,认为它是解决较复杂问题的强有力的工具。在下列关于 递归算法的说法中,正确的是()。A. 在 1977 年前后形成标准的计算机高级语言“ FORTRAN77”禁止在程序使用递归,原因之一是该

2、方法可能 会占用更多的内存空间B. 和非递归算法相比,解决同一个问题,递归算法一般运行得更快一些C. 对于较复杂的问题,用递归方式编程一般比非递归方式更难一些D. 对于已经定义好的标准数学函数 sin(x),应用程序中的语句“ y=sin(sin(x);”就是一种递归调用13. 一个无法靠自身的控制终止的循环称为“死循环”,例如,在 C+语言程序中,语句“ while(1) printf(“*”);” 就是一个死循环,运行时它将无休止地打印 *号。下面关于死循环的说法中,只有()是正确的。A. 不存在一种算法,对任何一个程序及相应的输入数据,都可以判断是否会出现死循环,因而,任何编译系统 都不

3、做死循环检验B有些编译系统可以检测出死循环C. 死循环属于语法错误,既然编译系统能检查各种语法错误,当然也应该能检查出死循环D. 死循环与多进程中出现的“死锁”差不多,而死锁是可以检测的,因而,死循环也可以检测的14在 C+程序中,表达式 23|25 的值是()A. 23 B. 1 C.32 D.1815在 C+程序中,判断 a 等于 0 或 b 等于 0 或 c 等于 0 的正确的条件表达式是()A. !(a!=0)|(b!=0)|(c!=0) B. !=0)&(b!(c!=0) C. !(a=0&b=0)|(c!=0) D. (a=0)&(b=0)&(c=0)16地面上有标号为 A、B、C

4、 的 3 根细柱,在 A 柱上放有 10 个直径相同中间有孔的圆盘,从上到下依次编号为 1,2,3,将 A 柱上的部分盘子经过 B 柱移入 C 柱,也可以在 B 柱上暂存。如果 B 柱上的操作 记录为:“进,进,出,进,进,出,出,进,进,出,进,出,出”。那么,在 C 柱上,从下到上的盘子的 编号为( )。A. 2 4 3 6 5 7 B. 2 4 1 2 5 7 C. 2 4 3 1 7 6 D. 2 4 3 6 7 517. 与十进制数 1770 对应的八进制数是()。A. 3350 B. 3351 C. 3352 D. 354018. 设 A=B=true,C=D=false,以下逻辑

5、运算表达式值为假的有()。A. (AB)(CDA) B. (AB)C)D) C. A(BCD)D D. (A(DC) B19. (2070)16 + (34)8 的结果是()。A. (8332)10 B. (208A)16 C. (100000000110)2 D. (20212)820. 已知 7 个结点的二叉树的先根遍历是 1 2 4 5 6 3 7(数字为结点的编号,以下同),中根遍历是 4 2 6 5 1 7 3, 则该二叉树的后根遍历是()A. 4 6 5 2 7 3 1 B. 4 6 5 2 1 3 7 C. 4 2 3 1 5 4 7 D. 4 6 5 3 1 7 2二问题求解(

6、共 2 题,每题 5 分,共计 10 分)1(子集划分)将 n 个数1,2, n划分成 r 个子集。每个数都恰好属于一个子集,任何两个不同的子集 没有共同的数,也没有空集。将不同划分方法的总数记为 S(n,r)。例如, S(4,2)=7,这 7 种不同的划分方法依次为 (1),(234), (2),(134), (3),(124), (4),(123),(12),(34), (13),(24), (14),(23)。当 n=6,r=3 时,S(6,3)= _。(提示:先固定一个数,对于其余的 5 个数考虑 S(5,3)与 S(5,2),再分这两种情况对原固定的数进行分析)。2(最短路线)某城市

7、的街道是一个很规整的矩形网格(见下图),有 7 条南北向的纵街, 5 条东西向的横 街。现要从西南角的 A 走到东北角的 B,最短的走法共有多少种? _. 三阅读程序写结果(共 4 题,每题 8 分,共计 32 分)1.#include void main() int i,p5,a,b,c,x,y=20;for(i=0;ipi;a=(p0+p1)+(p2+p3+p4)/7;b=p0+p1/(p2+p3)/p4);c=p0*p1/p2;x=a+b-p(p3+3)%4;if(x10)y+= (b*100-a)/(pp4%3*5);elsey+=20+(b*100-c)/(pp4%3*5);cout

8、x,yendl;/ 注:本例中,给定的输入数据可以避免分母为 0 或数组元素下标越界。输入:6 6 5 5 3 输出:_2void fun(int *a,int *b) int *k;k=a; a=b; b=k;void main( ) int a=3, b=6, *x=&a, *y=&b;fun(x,y); coutab#include math.hint a151=0;int i,j,t,t2,n=50;for (i=2;=sqrt(n);i+)if(a1i=0) t2=n/i;for(j=2;j=t2;j+) a1i*j=1;t=0;=n;i+) if(a1i=0)setw(4)i; t

9、+; if(t%10=0) cout输出: _4.ctype.hvoid expand(char s1,char s2)int i,j,a,b,c;j=0;(c=s1i)!=0;i+) if(c=-) a=s1i-1; b=s1i+1;if ( isalpha(a) & isalpha(b) | isdigit(a) & isdigit(b) ) /函数 isalpha(a)用于判断字符 a 是否为字母, isdigit(b) 用于判断字符/b 是否为数 字,如果是,返回 1,否则返回 0j-;do s2j+=a+;while(tolower(a)s1;expand(s1,s2);s2int

10、maxline=200,kz;int reverse(char s) int i,j,t;for(i=0,j=strlen(s)-1; ikz;while( ) line; ;line 2. (棋盘覆盖问题)在一个 2k 2k 个方格组成的棋盘中恰有一个方格与其他方格不同(图中标记为 -1 的 方格),称之为特殊方格。现用 L 型(占 3 个小格)纸片覆盖棋盘上除特殊方格的所有部分,各纸片不得重叠, 于是,用到的纸片数恰好是 (4k-1) /3 。在下表给出的一个覆盖方案中, k=2,相同的 3 个数字构成一个纸片。 下面给出的程序是用分治法设计的,将棋盘一分为四,依次处理左上角、右上角、左下

11、角、右下角,递归进行。 请将程序补充完整。int board6565,tile; / tile 为纸片编号void chessboard(int tr,int tc,int dr,int dc,int size)/ dr,dc 依次为特殊方格的行、列号int t,s;if (size=1) ; t=tile+; s=size/2;if( ) chessboard(tr,tc,dr,dc,s);boardtr+s-1tc+s-1=t; ;if(dr=tc+s) chessboard(tr,tc+s,dr,dc,s);boardtr+s-1tc+s=t; ;if(dr=tr+s & dctc+s)

12、 chessboard(tr+s,tc,dr,dc,s);boardtr+stc+s-1=t; ;=tc+s) chessboard(tr+s,tc+s,dr,dc,s);boardtr+stc+s=t; ;void prt1(int b65,int n)int i,j;for(i=1;for(j=1;j+) setw(3)bij; void main()int size,dr,dc; coutdc;boarddrdc=-1;tile+;chessboard(1,1,dr,dc,size);prt1(board,size);NOIP2007 年普及组(C+语言)参考答案与评分标准一、单项选择题

13、:(每题 1.5 分)1.5 D D C B B 610BBC C A1115 C A A A B 1620 D C D A A二、问题求解:(每题 5 分)1902210三、阅读程序写结果1. 15, 46(对 1 个数给 4 分,无逗号扣 1 分)2. 3, 63. 2 3 5 7 11 13 17 19 23 2931 37 41 43 474. wer2345defgh45456782qqq四、完善程序(前 4 空(-),每空 2.5 分,后 6 空(-),每空 3 分)(说明:以下各程序填空可能还有一些等价的写法,各省可请本省专家审定和上机验证,不一定上报科学委员 会审查)1 i+ j- kz!=-1 reverse(line)2. return drtc+s chessboard(tr,tc,tr+s-1,tc+s-1,s) chessboard(tr,tc+s,tr+s-1,tc+s,s) chessboard(tr+s,tc,tr+s,tc+s-1,s) chessboard(tr+s,tc+s,tr+s,tc+s,s)

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

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