《NOIP初赛模拟试题-by-OI-Store(c++).pdf》由会员分享,可在线阅读,更多相关《NOIP初赛模拟试题-by-OI-Store(c++).pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-NOIPNOIP 初赛模拟试题初赛模拟试题 by OI Storeby OI Store(提高组(提高组 C+C+语言语言 二小时完成)二小时完成)一、单项选择题(共一、单项选择题(共 1010 题,每题题,每题 1.51.5 分,共计分,共计 1515 分。每题有且仅有一个正确答案。)分。每题有且仅有一个正确答案。)1.建立了计算机最主要的结构原理的人是()。A.图灵B.比尔盖茨C.冯诺伊曼D.克拉拉丹E.哥德尔2.设 a、b、c 是三个布尔型(boolean)的变量,则表达式(ab)(bc)(ca)(aa)(bb)的值()。A.始终为 trueB.始终为 falseC.当且仅当 c 为
2、true 时为 falseD.当且仅当 a 与 b 均为 true 时为 trueE.依赖于 a、b、c 三者的值3.设 a、b 为两个浮点(float)型变量,下面的表达式中最有可能为真的是()。A.a=bB.a*a+2*a*b+b*b=(a+b)*(a+b)C.(a+b)*(a-b)+b*b-a*a3*S(3)+2*S(2)-1C.S(0)2*S(3)+S(2)E.S(0)=3*S(3)+2*S(2)6.佳佳在网上购买了一个空间,建设了一个网站。那么,他向网站上上传网页时最有可能采用的网络协议是()。A.HTTPB.TCPC.POP3D.FTPE.BT7.一个音乐爱好者收藏有100首MP3
3、格式的音乐,这些音乐的编码率都是192Kbps,平均每首音乐的时长为 3min,他要通过网络将这些音乐传送给另一个人,假设网络速度恒定为 512KB/s,则他传送这些音乐大概需要()。A.72s B.843sC.112.5minD.3h48min16sE.超过 24 小时8.假设用双核CPU运行我们平常编写的信息学竞赛程序,相对于同等规格的单核CPU而言,运行时间()。A.会缩短为原来的 1/9B.会缩短为原来的 1/4-C.会缩短为原来的 1/2D.基本没有差别E.会比原来略长9.将一台多媒体 PC 的某个部件拔下来后,仍能正常启动进入Windows,这个部件可能是()。A.CMOSB.内存
4、C.硬盘D.声卡E.显卡10.中国自主研发的通用 CPU“龙芯一号”和“龙芯二号”的问世时间分别是()。A.2002,2005B.2003,2005C.2002,2004D.2003,2006E.2001,2004二、不定项选择题(共二、不定项选择题(共 1010 题,每题题,每题 1.51.5 分,共计分,共计 1515 分。多选或少选均不得分)分。多选或少选均不得分)11.(7f)16+(10010101)2的运算结果等于()。A.(114)16B.(276)10C.(100010100)2D.(11d)16E.(731)812.设 a、b、c 是三个布尔(boolean)型变量,若表达式
5、abc 为 true,则下列表达式一定为 true 的是()。A.(a(bc)(a)B.(ba)(ac)(cb)C.abcD.(ba)(ab)E.以上皆错13.下面的前序遍历结果不可能是由一棵排序二叉树产生的有()。A.1、2、3、4、5、6、7、8B.1、4、3、6、7、8、5、2C.8、7、6、5、4、3、2、1D.6、7、8、5、4、3、2、1E.以上皆错14.设想这样一种数据结构,它有PUSH 和 POP 两个操作。其中 PUSH 操作就是将一个元素加入到这个数据结构中,而当第 k 次调用 POP 元素时(保证这个数据结构中有元素),选择其中的一个元素返回并删除,若k 是奇数,选择的是
6、元素中的最大值,若k 是偶数,选择的是元素中的最小值。如果调用PUSH 操作放入数据结构中的元素依次是 1、2、3、4、5、6,则下列序列中可能通过适当的POP 操作产生的有()。A.1、2、3、4、5、6B.1、2、3、4、6、5C.6、1、5、2、4、3D.2、1、6、3、5、4E.3、1、4、2、6、515.下面的软件必须在联网状态下才能正常使用的有()。A.BitTorrentB.Mozilla FirefoxC.Red Hat LinuxD.MSNMessengerE.WinZip16.下面的软件可以免费无限制使用的有()。A.WinRARB.RealPlayerC.Internet
7、 ExplorerD.FreeBSDE.ACDSee-17.下面的硬件接口中既不可以连接声卡、又不可以连接鼠标的通讯设备或外设接口有()。A.PCIB.USBC.BlueToothD.红外E.以上皆错18.将一个分辨率为 800*600 的显示器调整为 1024*768 的分辨率后(调整前与调整后显示器均为最佳显示状态),下列现象中可能会出现的有()。A.屏幕上原来 1cm 长的线段变成了 1.28cmB.屏幕上原来 10.24cm 长的线段变成了 8.00cmC.屏幕上原来面积为 7.68cm2的图形变成了 6.00cm2D.屏幕上原来面积为 10.24cm2的图形变成了 6.25cm2E.
8、桌面上原来不到三行的图标排列成了两行19.下面的行为不符合网络道德的有()。A.制作“恶搞”短片B.利用 QQ 聊天C.在 blog 上留言D.下载非法文件E.进入色情网站20.以下各项正确的有()。A.Pascal 语言的出现时间早于C 语言B.Java 是目前对面向对象编程的支持最完善的语言C.目前出现的任何计算机语言都能够使用编译器编译成机器码D.编译好的程序只能在特定的操作系统和硬件平台上使用E.一个使用 Pascal 语言编写并编译好的程序,我们可以将其还原成原来的Pascal代码三问题求解(共三问题求解(共 2 2 题,每题题,每题 5 5 分,共计分,共计 1010 分)分)21
9、.四个红色球、四个蓝色球,按顺序任意放成一排,并以1-8 编号。如果相同颜色的球之间不加区分的话,那么四个红色球的编号总和超过四个蓝色球的编号总和的概率是(用最简真分数表示):_。22.有五个工人 A、B、C、D、E 需要做工作一、二、三、四、五,下表显示了每个人做每项工作所要花费的最短时间。则完成所有5 项工作所需要的最短时间是_。(说明:不同的工作可以由不同的人同时做,但同一个工作只能由一个人来完成)ABCDE一 75864二 43546三 58673四 67345五 43653四、阅读程序(共四、阅读程序(共 4 4 题,每题题,每题 8 8 分,共计分,共计 3232 分)分)-23.
10、#include#includeusing namespace std;int main()int a,b,c,i,s300;cinabc;s0=a;程序:s1=b;for(i=2;i=c;i+)si=a*si-2+b*si-1;coutscendl;return 0;输入:2 3 7输出:24.#include#includeusing namespace std;void get()char c;cinc;程序:if(c!=!)get();cout.c.;int main()get();return 0;输入:Hello,World!输出:25.#include#includeusing
11、namespace std;程序:double f(double d)return 1.0/(1-d);-int main()double a;int b,i;cinab;for(i=b;i=1;i-)a=f(a);printf(%.1fn,a);return 0;输入:0.5 1000输出:26.#include#includeusing namespace std;int s100,ii,i,j,n,swap;bool r;void swp(int i,int j)int tmp;tmp=si;si=sj;sj=tmp;void rev(int i,int j)while(in;for(i
12、=0;isi;i=n-1;while(true)ii=i;i-;if(si=sj);swp(i,j);-rev(ii,n-1);break;for(i=0;i=n-1;i+)coutsi;return 0;输15入:14 2 12 6 4 13 8 15 3 10 11 9 7 5 1输出:27.四、完善程序四、完善程序(前前 5 5 空,每空空,每空 2 2 分,后分,后 6 6 空,每空空,每空 3 3 分,共分,共 2828 分分)27.循环小数题目描述题目描述:给出一个分数的分子和分母,要将其转换为小数的形式。输入输入:只有两个整数,分别表示分数的分子和分母。输出输出:只有一个十进制小
13、数,表示这个分数转换成的小数。如果得到的小数不是循环小数,则输出其全部数字。否则在输出完毕第一个循环节后不再输出。#include#include#include#include#includeusing namespace std;int s100,t100,a,b,g,i,j,d;int gcd(int a,int b)if(b=0)return a;else _(1)_;void work(int a,int b)i=0;d=1;while(true)if(a=0)break;a*=10;ti=a;si=a/b;a=a%b;for(j=0;j=i-1;j+)-if(sj=si)&(tj=
14、ti)d-;_(2)_;if(d=0)break;coutab;if(ab)g=gcd(a,b);else _(4)_;a/=g;b/=g;_(5)_;a%=b;work(a,b);return 0;28.题目描述:在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1 次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个
15、果子重量都为 1,并且已知果子的种类数和每种果子的数目,你的任务是设计出合并的次序方案,使多多耗费的体力最少,并输出这个最小的体力耗费值。例如有 3 种果子,数目依次为 1,2,9。可以先将 1、2 堆合并,新堆数目为 3,耗费体力为 3。接着,将新堆与原先的第三堆合并,又得到新的堆,数目为12,耗费体力为 12。所以多多总共耗费体力=3+12=15。可以证明 15 为最小的体力耗费值。输入:输入包括两行,第一行是一个整数n(1n=10000),表示果子的种类数。第二行包含 n 个整数,用空格分隔,第i 个整数 ai(1ai=20000)是第 i种果子的数目。输出:输出包括一行,这一行只包含一
16、个整数,也就是最小的体力耗费值。输入数据保证这个值小于 231。#include#includeusing namespace std;int s115000,s215000,s1Low,s1hi,s2Low,s2hi,r,L,s,x,i,min1,min2;int peeksmall()min1=1000000000;min2=1000000000;if(s1Low!=s1hi)min1=s1s1Low;-if(s2Low!=s2hi)min2=s2s2Low;if(_(1)_)return s1s1Low+;else return s2s2Low+;void swap(int L,int r)int tmp;tmp=s1r;s1r=s1L;s1L=tmp;void sort(int Low,int hi)int L;if(Low=hi)_(2)_;else x=s1(Low+hi)/2;swap(Low,_(3)_);L=Low;r=hi;while(Lr)while(L=x)r-;s1L=s1r;while(Lr)&(s1Ls1hi;for(i=0;is1i;sort(0,_(5)_);s=0;for(i=s1hi-1;i=1;i-)s2s2hi=peeksmall()+_(6)_;s=s+s2s2hi;s2hi+;coutsendl;return 0;-