完整版CCFS组非专业级别软件能力认证第一轮试.docx
- 文档编号:7942006
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:16
- 大小:25.89KB
完整版CCFS组非专业级别软件能力认证第一轮试.docx
《完整版CCFS组非专业级别软件能力认证第一轮试.docx》由会员分享,可在线阅读,更多相关《完整版CCFS组非专业级别软件能力认证第一轮试.docx(16页珍藏版)》请在冰豆网上搜索。
完整版CCFS组非专业级别软件能力认证第一轮试
2019CCF非专业级别软件能力认证第一轮
(CSP-S)提高级C++语言试题A卷
(B卷与A卷仅顺序不同)
认证时间:
2019年10月19日
考生注意事项:
l 试题纸共有10页,答题纸共有1页,满分100分。
请在答题纸上作答,写在试题纸上的一律无效
l 不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共15题,每题2分,共计30分;每题有且仅有一个正确选项)
1.若有定义:
int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2的值是:
()
A.0.000000 B.2.750000 C.2.500000 D.3.500000
答案:
D
解析:
x+y转整数等于7,7%3*7%2=1,再加x,答案为3.5。
2. 下列属于图像文件格式的有()
A.WMV B.MPEG C.JPEG D.AVI
答案:
C
解析:
WMV是音频格式、MPEG、AVI是视频格式、JPEG是图像格式。
3. 二进制数11101110010111和01011011101011进行逻辑或运算的结果是()
A.1111111101 B.11111111111101 C.10111111111111 D.11111111111111
答案:
D
解析:
将两个二进制数(右)对齐,逐位做或运算,每一位如果有1则或运算结果为1,14位进行或运算计算结果均为1,选D。
4. 编译器的功能是()
A. 将源程序重新组合
B. 将一种语言(通常是高级语言)翻译成另一种语言(通常是低级语言)
C. 将低级语言翻译成高级语言
D. 将一种编程语言翻译成自然语言
答案:
B
解析:
编译器将高级语言(例如C++,方便人创作)翻译成低级语言(机器语言,方便机器执行)。
5. 设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是()
A.X=(x*100+0.5)/100.0 B.x=(int)(x*100+0.5)/100.0;
C.x=(x/100+0.5)*100.0 D.x=x*100+0.5/100.0;
答案:
B
解析:
x的类型是float,所以(x*100+0.5)也是float,也就是有小数位,需要先转成int,也就是B选项。
6.由数字1,1,2,4,8,8所组成的不同的4位数的个数是()
A.104 B.102 C.98D.100
答案:
B
解析:
穷举法。
1.当取出1,1,2,4时,共有C(2,4)*2=12种;2.当取出1,1,2,8,也是12种;3当取出1,1,4,8,也是12种;4当取出1,1,8,8,为C(2,4)是6种;5当取出为1,2,4,8时候,为A(4,4)=20种;6当取出1,2,8,8,为12种;7当取出1,4,8,8为12种,8,当取出2,4,8,8为12种。
一共102种情况。
7.排序的算法很多,若按排序的稳定性和不稳定性分类,则()是不稳定排序。
A.冒泡排序 B.直接插入排序 C.快速排序 D.归并排序
答案:
C
解析:
若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的。
快速排序在中枢元素和a[j]交换的时候,很有可能把前面的元素的稳定性打乱,比如序列为53343891011,现在中枢元素5和3(第5个元素,下标从1开始计)交换就会把元素3的稳定性打乱,所以快速排序是一个不稳定的排序算法。
8. G是一个非连通无向图(没有重边和自环),共有28条边,则该图至少有()个顶点
A.10B.9 C.11D.8
答案:
D
解析:
n个点最多n(n+1)/2条边,要不连通,至少去掉n-1条边n(n+1)/2-(n-1)≥28,n最小为8。
9.一些数字可以颠倒过来看,例如0、1、8颠倒过来看还是本身,6颠倒过来是9,9颠倒过来看还是6,其他数字颠倒过来都不构成数字。
类似的,一些多位数也可以颠倒过来看,比如106颠倒过来是901。
假设某个城市的车牌只有5位数字,每一位都可以取0到9。
请问这个城市有多少个车牌倒过来恰好还是原来的车牌,并且车牌上的5位数能被3整除?
()
A.40B.25C.30D.20
答案:
B
解析:
前2位有0,1,8,6,9,5种选择,第3位只能放0,1,8,后2位由前2位决定。
而0,1,8模3正好余0,1,2,所以给定其他4位,第3位有且仅有1种选择,总数=5*5*1*1*1=25。
10.一次期末考试,某班有15人数学得满分,有12人语文得满分,并且有4人语、数都是满分,那么这个班至少有一门得满分的同学有多少人?
()
A.23B.21C.20D.22
答案:
A
解析:
容斥原理,总满分人数=数学满分+语文满分-语文数学满分=15+12-4=23。
11.设A和B是两个长为n的有序数组,现在需要将A和B合并成一个排好序的数组,请问任何以元素比较作为基本运算的归并算法,在最坏情况下至少要做多少次比较?
()
A.n²B.n㏒n C.2nD.2n-1
答案:
D
解析:
考虑2个数组分别是(1,3,5)和(2,4,6),共需比较5次。
因为结果数组大小是2n,先从两数组取第一个值比较,小的入结果数组,剩下的和另一个数组的下一个数比较,依次这样,直到一个数组为空。
另一个数组剩下的元素直接进结果数组。
最坏一个数组空,另一个数组还剩1个元素,比较次数就是2n-1。
12. 以下哪个结构可以用来存储图()
A.栈B.二叉树C.队列 D.邻接矩阵
答案:
D
解析:
邻接矩阵和邻接表可以存储图,其他三项都是数据结构,不是存储结构。
13.以下哪些算法不属于贪心算法?
()
A.Dijkstra算法 B.Floyd算法 C.Prim算法 D.Kruskal算法
答案:
B
解析:
Dijkstra算法需要每次选取d[i]最小的边;Prim算法需要每次选在集合E中选取权值最小的边u;kruskal剩下的所有未选取的边中,找最小边。
Floyd算法只需要按照顺序取边就可以了。
14.有一个等比数列,共有奇数项,其中第一项和最后一项分别是2和118098,中间一项是486,请问一下哪个数是可能的公比?
()
A.5 B.3 C.4 D.2
答案:
B
解析:
设公比是p,那么2*p^(2n-2)=118098,2*p^(n-1)=486,可以得到p^(n-1)=243,由于gcd(2,243)=gcd(4,243)=gcd(5,243)=1,所以排除2,4,5,而gcd(3,243)=3,所以公比可能是3。
15.有正实数构成的数字三角形排列形式如图所示。
第一行的数为a2,1,a2,2,第n行的数为an,1,an,2,…,an,n。
从a1,1开始,每一行的数ai,j只有两条边可以分别通向下一行的两个数ai+1,j和ai+1,j+1。
用动态规划算法找出一条从a1,1向下通道an,1,an,2,…,an,n中某个数的路径,使得该路径上的数之和最大。
令C[i][j]是从a1,1到ai,j的路径上的数的最大和,并且
C[i][0]=C[0][j]=0,则C[i][j]=()
A.mac{C[i-1][j-1],C[i-1][j]}+ai,j
B.C[i-1][j-1]+C[i-1][j]
C.max{C[i-1][j-1],c[i-1][j]}+1
D.max{C[i][j-1],C[i-1][j]}+ai,j
答案:
A
解析:
每个点的只能够从C(i-1,j-1)以及C(i-1,j)过来,所以最优解肯定是从更大的那个节点到,所以结果包含max(C(i-1,j-1),C(i-1,j)),而计算的是和所以也包含aij这一项。
二、阅读程序(程序输入不超过数组或字符串定义的范围;判断题正确填✓,错误填✗;除特殊说明外,判断题1.5分,选择题4分,共计40分)
1.
1 #include
2 usingnamespacestd;
3 intn;
4 inta[100];
5
6 intmain(){
7 scanf(“%d”,&n);
8 for(inti=1; i<=n;++i){
9 scanf(“%d”,&a[i])
10 intans=1
11 for(inti=1;i<=n;++i){
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 CCFS 专业 级别 软件 能力 认证 第一轮