NO.IP初赛模拟题6(C++~)
-_信息学初赛模拟试题(6)一、选择题:1微型计算机的性能主要取决于( )。A. 内存 B. 中央处理器 C. 硬盘 D. 显示卡 E. 声音卡2字长为32位的计算机是指( )。A该计算机能够处理的最大数不超过32 B该计算机中的CPU可以同时处理32位的二进制信息C该计算机的内存量为32MBD该计算机每秒钟所能执行的指令条数为32MIPSE该计算机的硬盘转速是32转 3MSDOS文件系统目录的组织形式属于( )。A关系型结构 B网络型结构 C树型结构 D直线型结构 E星型结构4Windows应用环境中鼠标的拖动操作不能完成的是( )。 A当窗口不是最大时,可以移动窗口的位置B当窗口最大时,可以将窗口缩小成图标C当窗口有滚动条时可以实现窗口内容的滚动D可以将一个文件移动(或复制)到另一个目录中去 E调整任务栏的大小和位置5下面关于C语言的几种说法中,正确的是( )。 A它是一种高级语言 B它是一种汇编语言 C它是一种低级语言 D它是一种机器语言 E它不是一种过程化语言6下列叙述中正确的是( )。 A计算机病毒只能传染给可执行文件 B计算机软件是指存储在软盘中的程序 C计算机每次启动的过程之所以相同,是因为RAM 中的所有信息在关机后不会丢失D硬盘虽然装在主机箱内,但它属于外存 EROM是随机存储器7多媒体计算机系统的两大组成部分是( )。A. 多媒体功能卡和多媒体主机 B. 多媒体通信软件和多媒体开发工具 C. 多媒体输入设备和多媒体输出设备 D. 多媒体计算机硬件系统和多媒体计算机软件系统 E. 多媒体主机和多媒体信息8用WORD编辑文档后并存储在文件中,该文件的文件名缺省后缀名为( )A. *.txt B. *.bmp C. *.exe D. *.doc E. *.com9要在WINDOWS标准窗口的下拉菜单中选择命令,下列操作错误的是( )。A. 用鼠标单击该命令选项 B. 用键盘上的上下方向键将高亮度条移至该命令选项后再按回车键 C. 同时按下CTRL键与该命令选项后括号中带有下划线的字母键 D. 直接按该命令选项后面括号中带有下划线的字母键 E. 同时按下ALT键与该命令选项后括号中带有下划线的字母键10十进制数397的十六进制值为( )。A. 18D B. 18E C. 277 D. 361 E.811. 数据结构被形式地定义为(K,R),其中K是_有限集合,R是K上的关系有限集合。A 算法 B 数据元素 C 数据操作 D 逻辑结构12. 不带头结点的单链表head为空的判定条件是_A head=NULL B head->next=NULL C head->next=head D head!=NULL13. 若进队列的序列是1,2,3,4,则_是一个出队列序列.A 3,2,1,4 B 3,2,4,1 C 4,2,3,1 D 1,2,3,414. 设串s1=''ABCDEFG'',s2=''PQRST'',函数con(x,y)返回x和y串的连接串,subs(s,I,j)返回串s的从序号I的字符开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1,2,len(s2),subs(s1,len(s2),2)的结果串是_A BCDEF B BCDEFG C BCPQRST D BCDEFEF15. 二维数组a的每个元素是由6个字符组成的串,行下标I的范围从0到8,列下标j的范围从1到10,则存放a至少需要_个字节.A 90 B 180 C 240 D 54016. 树B的层号表示1a,2b,3d,3e,2c对应于下面选择的_.A 1a2b3d,3e,2c B abd,e,c C abde,c D abd,e,c17. 对于一个具有n个顶点的无向图,若采用邻接矩阵表示,则矩阵的大小是_。A n B n+1 C n-1 D n+e18. 按_遍历二叉排序树,可以得到按值递增和递减次序的关键码序列. A 前序 B 中序 C 后序 D 都可以19. 关键码序列_是一个堆.A 16,72,31,23,94,53 B 94,23,31,72,16,53C 16,53,23,94,31,72 D 16,23,53,31,94,7220. 设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为_A 2h B 2h-1 C 2h+1 D h+1二、问题求解:(每题5分,共10分)1. 已知,按中序遍历二叉树的结果为:#$问:有多少种不同形态的二叉树可以得到这一遍历结果,并画出这些二叉树。 2.有2×n的一个长方形方格,用一个1×2的骨牌铺满方格。例如n=3时,为2×3方格。此时用一个1×2的骨牌铺满方格,共有3种铺法试对给出的任意一个n(n>0),求出铺法总数的递推公式。 三、写出程序的运行结果:(每小题8分,共32分)1#include<iostream>using namespace std;int main()int i,s,max,a10;for(i=0;i<10;i+) cin>>ai;max=a0;s=a0;for(i=1;i<10;i+)if(s<0)s=0;s=s+ai;if(s>max) max=s;cout<<"max="<<max<<endl;return 0;输入:-1 16 24 6 7 8 18 -6 15 34输出: 2#include<iostream>using namespace std;int main()int i,j,l,n,k,s,t,b10;cin>>l>>n;s=l;k=1;t=l;while(s<n)k=k+1;t=t*l;s=s+t;for(i=0;i<10;i+) bi=0;j=10;while(n>0)j=j-1;bj=n%l;n=n/l;for(i=9-k+1;i<10;i+) cout<<(char)('A'+bi)<<" "cout<<endl;return 0;输入:4167输出: 3#include<iostream>using namespace std;int a13;void sw(int i1,int j1)int k1;for(k1=1;k1<=j1-i1+1;k1+)ai1+k1-1=ai1+k1-1+aj1-k1+1;aj1-k1+1=ai1+k1-1-aj1-k1+1;ai1+k1-1=ai1-k1+1-aj1-k1+1;int main()int i,j=200;for(i=1;i<=12;i+)ai=i;j=j-i;sw(1,4);sw(5,10);for(i=1;i<=12;i+)if(j%i=1) cout<<ai<<" "j=j-ai;cout<<endl;return 0;输出: 4#include<iostream>using namespace std;const int n=10;int co(int i1)int s1,j1;s1=n;for(j1=n-1;j1>=n-i1+1;j1-) s1=s1*j1/(n-j1+1);return s1;int main()int s,i;s=n+1;for(i=2;i<=n;i+) s=s+co(i);cout<<s<<endl;return 0;输出 四、完善程序(共2题,每题14分,共28分)1. 1000!尾0问题【问题描述】以下程序用于统计1000!末尾有多少个0。其中1000!=1´2´3´´1000。实际上我们只要统计1000!有多少个因子10。由于10=5´2,因而只需统计有多少个因子5和2。显然在11000的所有数中,5的因子个数比2的因子个数少。因此,只要统计11000的所有数中共有多少个因子5就行了。#include<iostream>using namespace std;int main()int i,j,n;n=0;for( 1 )j=i*5;while( 2 =0) 3 j= 4 ;cout<<n<<endl;return 0;2. 高精度正整数乘法问题 以下程序用于求任意2正整数的乘积。程序中用a,b表示这2个正整数,并将它们的乘积存于数组ab中。根据数的乘法规则,将a的所有位与b的所有位从低位至高位两两相乘。设a的第i位与b的第j位相乘的结果为ab0,则ab0的个位应加到乘积ab的第i+j-1位上,ab0的十位应加到乘积ab的第i+j位上。在加的过程中也应注意进位。#include<iostream>using namespace std;const int n=100;int an,bn,ab2*n;void init(int c,int length)int i,t,m,len;char ch100;len=0;cin>>ch;while(chlen!='0')clen= 1 ;len+;length=len;cout<<len<<endl;for(i=0;i<len