通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"CSP考试" 试卷中 CSP-S1提高级初赛试卷[2020] 中有题目如下:
第1题
#include <iostream> #include <cstdlib> using namespace std; int n; int d[10000]; int find(int L, int R, int k) { int x = rand() % (R - L + 1) + L; swap(d[L], d[x]); int a = L + 1, b = R; while (a < b) { while (a < b && d[a] < d[L]) ++a; while (a < b && d[b] >= d[L]) --b; swap(d[a], d[b]); } if (d[a] < d[L]) ++a; if (a - L == k) return d[L]; if (a - L < k) return find(a, R, k - (a - L)); return find(L + 1, a - 1, k); } int main() { int k; cin >> n; cin >> k; for (int i = 0; i < n; ++i) cin >> d[i]; cout << find(0, n - 1, k); return 0; }
假设输入的 n,k 和 d[i] 都是不超过 10000 的正整数,且 k 不超过 n,并假设 rand() 函数产生的是均匀的随机数。
2)判断:将第 19 行的“d[a]”改为“d[b]”,程序不会发生运行错误。( )
正确
错误
所属试卷:CSP-S1提高级初赛试卷[2020]
有如下程序,运行时的输出结果是。
下面关于构造函数和析构函数的描述中,错误的是。
若int a=5, b; 表达式计算后变量b的值等
请编写一个函数fun,它的功能是:求出一个2×M整型二
以下不属于C语言位运算符的是( )。
若函数中有定义语句:则。
关键字__________用于测试一个对象是否是一个可
集合:s={1,2,3,4,5,6},t={4,5,6
_____指令用来取消宏定义。
假设函数指针p指向函数 int func,如果要使
输入的n等于1001时,程序不会发生下标越界。
指出下面的IP地址中,哪个是C类地址( )
下列那一个指令可以显示目录的大小( )
Linux系统下经常使用的两种桌面环境是:____
关于Samba服务器:(1)叙述该服务器的功能;(2)
当系统管理员需升级内核版本和改变系统硬件配置时,应(
什么命令解压缩tar文件?
在bash中,export命令的作用是:
连接是一种特殊的等值连接,它结果中不含重复的属
MySQL中,预设的、拥有最高权限超级用户的用户名为
数据流图是用于表示软件模型的一种图示方法,在下列可采用
什么是黑盒测试法?[答案解析]黑盒测试法把程序看成一个
设有以下共用体类型说明和变量定义,则变量c在内存所占字
已知x=3,y=2,则表达式x*=y+8的值为____
将函数funl的入口地址赋给指针变量p的语句是____
设有如下函数定义若执行调用语句:n=fun(3);,则
若输入的字符串长度为 18,那么输入的字符串跟输出的字
(最长路径)给定一个有向无环图,每条边长度为 1,求图
输入 :3AB:ACDEbFBkBDAR:ACDBrT
如图所示,图中每条边上的数字表示该边的长度,则从 A
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2