csp-j初赛测评
试卷题目预览
某同学用冒泡排序对数组{6,1,5,2,4}进行升序排序,请问需要进行多少次元素交换?( )
考虑以下C++函数,在main函数调用solve后,x和y的值分别是?( )

函数calc(n)的定义如下,则calc(5)的返回值是多少?( )

在C/C++中,(char)('a'+13)与下面的哪一个值相等( )
下面哪一个不是操作系统名字( )
在C++中,下面哪个关键字用于声明一个变量,其值不能被修改?( )。
根节点的高度为1,一根拥有2023个节点的三叉树高度至少为( )。
以下哪个不是操作系统?( )
阅读程序(3)

将第18行的"f[i][j]=std::max(f[i][j],std::max(f[i-1][j],f[i][j-1]));"删去后,并不影响程序运行结果。()
阅读程序(2)

假设输入的n为正整数,输出的答案一定小于等于n,大于等于1。( )
阅读程序(3)

当程序运行完毕后,对于所有的1≤i,j≤n,都一定有f[i][j]≤f[n][n]。( )
阅读程序(1)

当输入为"10"时,程序的第一个输出为"4",第二个输出为"17"。( )
阅读程序(1)

若将isPrime(i)函数中的条件改为i<=n/2,输入"20"时,countPrimes(20)的输出将变为"6"。( )
阅读程序(1)

sumPrimes函数计算的是从2到n之间的所有素数之和。( )
阅读程序(3)

当b为负数时,customFunction(a,b)会陷入无限递归。( )
阅读程序(3)

当输入为"2 3"时,customFunction(2,3)的返回值为"64"。( )
阅读程序(2)

当输入两个完全相同的字符串时,g函数的返回值总是true( )
阅读程序(1)

假设输入的所有数都为不超过1000的正整数:
将第7行中的"(s-b)*(s-c)"改为"(s-c)*(s-b)"不会影响程序运行的结果( )
以下对数据结构的表述不恰当的一项为:( )。
运行以下代码片段的行为是( )。

假设有一组字符{a,b,c,d,e,f},对应的频率分别为5%,9%,12%,13%,16%,45%。请问以下哪个选项是字符a,b,c,d,e,f分别对应的一组哈夫曼编码?( )
阅读程序(3)

如果输入x=3和y=3,则程序的最终输出为( )
如果一个正整数 a,既是8的倍数,又是24的约数,它的C++表达式应该如何表示( )
执行 for(int k=5; k>=1; k--) { cout << k; } 后,屏幕输出为( )
若 int a = 10, b = 5;,则表达式 a != b 的值为( )
以下关于标准C++一维数组的描述,哪一项是错误的?( )
下列代码段执行后,变量sum的值是( )

以下关于C++求最小值函数min()的描述,不正确的是( )
执行以下C++代码后,c的数值是( )

以下C++代码count++执行的次数是( )

下面枚举法查找最大值索引程序中,横线处应该填写的是()

下面程序想通过函数计算三门课总分,横线处应填入的是()。
int sumScore(int a, int b, int c) {
return a + b + c;
}
int main() {
int chinese = 88, math = 95, english = 90;
int total = ________;
cout << total;
return 0;
}
某班3个小组、每组4名同学的分数存入下面的二维数组score,则score[1][2]的值是()。
int score[3][4] = {
{80, 81, 82, 83},
{90, 91, 92, 93},
{70, 71, 72, 73}
};
下面C++代码执行后,输出的是( )。
string s = "chen a dai";
char c = s[0];
cout << c << endl;
下面C++代码执行后的结果是( )。
int arr[2][3] = {{1,2,3}, {4,5,6}};
cout << arr[1][0] << endl;
在C++中,执行下面代码后,输出的是( )。
int arr[100];
cout << sizeof(arr) << endl;
现代计算机是指电子计算机,它所基于的是( )体系结构。
执行climb(6)的返回值为( )。
int climb(int n) {
if(n <= 2) return n;
int a = 1, b = 2, c = 0;
for(int i = 3; i <= n; i++) {
c = a + b;
a = b;
b = c;
}
return c;
}
在C++中,( )正确定义一个名为student的结构体,其中包含一个name字符数组和一个age整数?
下面代码实现了冒泡排序函数,则横线上应填写( )。
for (int i = 0; i < arr.size() - 1; i++) {
bool flag = false;
________________ {
if (arr[j] > arr[j + 1]) {
swap(arr, i, j);
flag = true;
}
}
if (!flag) break;
}
下面关于链表和数组的描述,错误的是( )。
下列代码中,输出结果是( )

已知字符'0'的ASCII编码的十进制表示为48,则执行下面C++代码后,输出是( )。

小杨的父母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是( )。
下面C++程序执行的结果是( )。

完善程序(1)
(枚举因数)从小到大打印正整数n的所有正因数。
①处应填( )
完善程序(1)
(枚举因数)从小到大打印正整数n的所有正因数。
②处应填( )
阅读程序(2)

假设 int 为 32 位有符号整数类型,输入的 n 是不超过 47000 的自然数、k 是不超过 int表示范围的自然数。
当输入为"2 1"时,输出的第一个数最接近( )。
整型变量x的初始值为10,以下代码的输出结果是( )
