CSP-J First Round
第一轮初赛真题题库
支持按年份刷整套真题,也支持按知识点专项训练。每道题都有答案、详细解析、考点和易错提醒。
C++ 基础 专项
共 39 道题
以下哪个不是C++中的基本数据类型?
以下哪个不是C++中的基本数据类型?
解析预览:本题考查C++ 基础。正确答案为 C。解题时应先定位题干条件,再根据定义、计算规则或程序执行过程逐步推导;其余选项通...
以下哪个不是C++中的循环语句?
以下哪个不是C++中的循环语句?
解析预览:本题考查C++ 基础。正确答案为 D。解题时应先定位题干条件,再根据定义、计算规则或程序执行过程逐步推导;其余选项通...
在C/C++中,(char)(‘a’+13)与下面的哪一...
在C/C++中,(char)(‘a’+13)与下面的哪一个值相等( )
解析预览:本题考查C++ 基础。正确答案为 B。解题时应先定位题干条件,再根据定义、计算规则或程序执行过程逐步推导;其余选项通...
当输入为“10”时,程序的第一个输出为“4”,第二个输出...
当输入为“10”时,程序的第一个输出为“4”,第二个输出为“17”。( )
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
若将isPrime(i)函数种的条件改为i<=n/2,输...
若将isPrime(i)函数种的条件改为i<=n/2,输入“20”时,countPrimes(20)的 输出将变为“6”( )
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
sumPrimes 函数计算的是从2 到n 之间的所有素...
sumPrimes 函数计算的是从2 到n 之间的所有素数之和( ) 单选题
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
如果将for(int i=2;i*i<=n;i++)改为...
如果将for(int i=2;i*i<=n;i++)改为for(itn i=2;i<=n;i++),输入“10”时,程序的输出( )
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
当输入的cost 数组为{10,15,20}时,程序的输...
当输入的cost 数组为{10,15,20}时,程序的输出为15( )
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
如果将dp[i-1]改为dp[i-3],程序可能会产生编...
如果将dp[i-1]改为dp[i-3],程序可能会产生编译错误( )
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
(2 分)程序总是输出cost 数组种的最小的元素 1 ...
(2 分)程序总是输出cost 数组种的最小的元素( ) 1 #include <iostream> 2 #include <vector> 3 using namespace std; 4 5 int compute(vector<int> &cost) { 6 int n = cost.size(); 7 vector<int> dp(n + 1, 0); 8 dp[1] = cost[0]; 9 for (int i = 2; i <= n; i++) { 10 dp[i] = min(dp[i - 1], dp[i - 2]) + cost[i - 1]; 11 } 12 return min(dp[n], dp[n - 1]); 13 } 14 15 int main() { 16 int n; 17 cin >> n; 18 vector<int> cost(n); 19 for (int i = 0; i < n; i++) { 20 cin >> cost[i]; 21 } 22 cout << compute(cost) << endl; 23 return 0; 24 } ·单选题
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
当输入的cost 数组为{1,100,1,1,1,100...
当输入的cost 数组为{1,100,1,1,1,100,1,1,100,1}时,程序的输出为()。
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
(4 分)如果输入的cost 数组为{10,15,30,...
(4 分)如果输入的cost 数组为{10,15,30,5,5,10,20},程序的输出为()
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
若将代码中的min(dp[i-1],dp[i-2])+c...
若将代码中的min(dp[i-1],dp[i-2])+cost[i-1]修改为dp[i-1]+cost[i-2],输入cost 数组为 {5,10,15}时,程序的输出为()
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
当b 为负数时,customFunction(a,b)会...
当b 为负数时,customFunction(a,b)会陷入无限递归。( )
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
当b 的值越大,程序的运行时间越长。 1 #includ...
当b 的值越大,程序的运行时间越长。( ) 1 #include <iostream> 2 #include <cmath> 3 using namespace std; 4 5 int customFunction(int a, int b) { 6 if (b == 0) { 7 return a; 8 } 9 return a + customFunction(a , b - 1); 10 } 11 12 int main() { 13 int x, y; 14 cin >> x >> y; 15 int result = customFunction(x, y); 16 cout << pow(result, 2) << endl; 17 return 0; 18 } 单选题 30,当输入为“5 4”时,customFunction(5,4)的返回值为( )。
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
如果输入x = 3 和y = 3,则程序的最终输出为
如果输入x = 3 和y = 3,则程序的最终输出为()
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
(4 分)若将customFunction 函数改为“r...
(4 分)若将customFunction 函数改为“return a + customFunction(a-1,b-1);并输 入“3 3”,则程序的最终输出为()。
解析预览:本题来自 2024 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
在C++中,下面哪个关键字用于声明一个变量,其值不能被修...
在C++中,下面哪个关键字用于声明一个变量,其值不能被修改?()。
解析预览:本题来自 2023 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
假设有一个链表的节点定义如下: (8) struct N...
假设有一个链表的节点定义如下: (8) struct Node { int data; Node* next;}; 现在有一个指向链表头部的指针:Node* head。如果想要在链表中插入一个新节点,其成员data的值为42, 并使新节点成为链表的第一个节点,下面哪个操作是正确的?()
解析预览:本题来自 2023 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
将第7行中的"(s-b)*(s-c)"改为"(s-c)*...
将第7行中的"(s-b)*(s-c)"改为"(s-c)*(s-b)"不会影响程序运行的结果()
解析预览:本题来自 2023 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
程序总是输出四位小数 #include<iostream...
程序总是输出四位小数() #include<iostream> #include<cmath> using namespace std; double f(double a,double b,double c){ double s=(a+b+c)/2; return sqrt(s*(s-a)*(s-b)*(s-c)); } int main(){ cout.flags(ios::fixed); cout.precision(4); int a,b,c; cin>>a>>b>>c; cout<<f(a,b,c)<<endl; return 0; } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
解析预览:本题来自 2023 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
以下哪种功能没有涉及C++语言的面向对象特性支持:
以下哪种功能没有涉及C++语言的面向对象特性支持:()
解析预览:本题来自 2022 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
运行以下代码片段的行为是。
运行以下代码片段的行为是()。
解析预览:本题来自 2022 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
以下对递归方法的描述中,正确的是:
以下对递归方法的描述中,正确的是:()
解析预览:本题来自 2022 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
删去第7 行与第13 行的unsigned,程序行为不变...
删去第7 行与第13 行的unsigned,程序行为不变。()
解析预览:本题来自 2022 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
将第7 行与第13 行的short 均改为char,程序...
将第7 行与第13 行的short 均改为char,程序行为不变。()
解析预览:本题来自 2022 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
程序总是输出一个整数“0”。
程序总是输出一个整数“0”。()
解析预览:本题来自 2022 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
以下不属于面向对象程序设计语言的是。
以下不属于面向对象程序设计语言的是()。
解析预览:本题来自 2021 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
考虑如下递归算法 solve(n) if n<=1 re...
考虑如下递归算法 solve(n) if n<=1 return 1 else if n>=5 return n*solve(n-2) else return n*solve(n-1) 则调用solve(7)得到的返回结果为()。
解析预览:本题来自 2021 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
输入的n 等于1001 时,程序不会发生下标越界。
输入的n 等于1001 时,程序不会发生下标越界。()
解析预览:本题来自 2021 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
输入的a[i] 必须全为正整数,否则程序将陷入死循环。
输入的a[i] 必须全为正整数,否则程序将陷入死循环。()
解析预览:本题来自 2021 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
将源代码中g 函数的定义(14-17 行)移到main ...
将源代码中g 函数的定义(14-17 行)移到main 函数的后面,程序可以正常编译运行。()
解析预览:本题来自 2021 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
冒泡排序算法的伪代码如卜: 输入:数组L, n ≥ 1。...
冒泡排序算法的伪代码如卜: 输入:数组L, n ≥ 1。输出:按非递减顺序排序的L 算法BubbleSort: 1. FLAG ← n //标记被交换的最后元素位置 2. while FLAG > 1 do k ← FLAG -1 FLAG ← 1 for j=1 to k do 3. 4. 5. 6. 7. if L(j) > L(j+1) then do 8. L(j) ↔ L(j+1) FLAG ← j 对n个数用以上冒泡排抒算法进行排序最少需要比较多少次?()。
解析预览:本题来自 2020 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
设A是n个实数的数组,考虑下面的递归算法: XYZ (A...
设A是n个实数的数组,考虑下面的递归算法: XYZ (A[1..n]) 1. if n=1 then return A[1] 2. else temp ← XYZ (A[1..n-1]) 3. if temp < A[n] 4. then return temp 5. else return A[n] 请问算法XYZ的输出是什么?()
解析预览:本题来自 2020 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
将第12行的“i < 26"改为“i < 16",程序运...
将第12行的“i < 26"改为“i < 16",程序运行结果不会改变。
解析预览:本题来自 2020 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
将第26行的"i< 26"改为“i < 16"程序运行结...
将第26行的"i< 26"改为“i < 16"程序运行结果不会改变。
解析预览:本题来自 2020 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
若有如下程序段,其中s、a、b、c均已定义为整型变量,且...
若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c 大于0): s=a; for(b=l;b<=c; b++)s = s-1; 则与上述程序段功能等价的赋值语句是?
解析预览:本题来自 2019 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
若将第8行的“i = 1”改为“i = 0”,程序运行时...
若将第8行的“i = 1”改为“i = 0”,程序运行时会发生错误。
解析预览:本题来自 2019 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...
若将第8行的“i <= n”改为“i * i=n”,程序...
若将第8行的“i <= n”改为“i * i=n”,程序运行结果不会改变。
解析预览:本题来自 2019 年 CSP-J 第一轮真题,考点为C++ 基础。做题时先识别题干中的关键词,再逐项排除与概念、计...