执行下面程序后,输出为( )。
1 int f(int x = 2){
2 return x * 3;
3 }
4
5 int main(){
6 cout << f() << " " << f(4);
7 }执行下面程序后,输出为( )。
1 int f(int x = 2){
2 return x * 3;
3 }
4
5 int main(){
6 cout << f() << " " << f(4);
7 }执行下面代码后,输出为( )。
1 int main() {
2 int a = 5;
3 int* p = &a;
4 int** q = &p;
5 **q += 7;
6 cout << a << " " << *p;
7 }已知:
1 int a[3][4] = {
2 {1,2,3,4},
3 {5,6,7,8},
4 {9,10,11,12}
5 };
6 int (*p)[4] = a;则表达式 *(*(p + 2) + 1) 的值为( )。
执行下面程序后,输出为( )。
1 void fun(int a, int &b, int *c){
2 a += 1;
3 b += 2;
4 *c += 3;
5 }
6
7 int main(){
8 int x = 1, y = 1, z = 1;
9 fun(x, y, &z);
10 cout << x << " " << y << " " << z;
11 }执行下面程序后输出为( )。
1 int x = 3;
2 void f(int& x){
3 x += 2;
4 }
5 int main(){
6 int x = 10;
7 f(x);
8 cout << x << " " << ::x;
9 }下列关于结构体初始化的写法,正确的是( )。
执行下面代码后输出为( )。
1 struct S { int a; int b; };
2
3 void g(S s){ s.a += 10; }
4 void h(S& s){ s.b += 10; }
5
6 int main(){
7 S s{1,2};
8 g(s);
9 h(s);
10 cout << s.a << " " << s.b;
11 }关于递推算法的描述,正确的是( )。
执行 climb(6) 的返回值为( )。
1 int climb(int n){
2 if(n <= 2) return n;
3 int a = 1, b = 2, c = 0;
4 for(int i = 3; i <= n; i++){
5 c = a + b;
6 a = b;
7 b = c;
8 }
9 return c;
10 }某排序算法对如下数据排序(按 score 升序),则下面关于该排序算法稳定性的描述中,说法正确的是( )。
初始: (90,'A'), (90,'B'), (80,'C'), (90,'D')
排序后: (80,'C'), (90,'A'), (90,'B'), (90,'D')
下面代码试图把数组按升序进行“插入排序”,横线处应填写( )。
1 void ins(int a[], int n){
2 for(int i = 1; i < n; i++){
3 int key = a[i];
4 int j = i-1;
5 while(j >= 0 && __________){
6 a[j+1] = a[j];
7 j--;
8 }
9 a[j+1] = key;
10 }
11 }下列代码段的时间复杂度为( )。
1 int cnt=0;
2 for(int i=0; i<n; i++){
3 for(int j=0; j<n; j++){
4 if( (i+j) % 3 == 0) cnt++;
5 }
6 }下面哪种方式不能实现将字符串 Welcome to 2026! 输出重定向到文件 log.txt ( )。
执行下面程序,输出结果是( )。
1 int divi(int a,int b){
2 if(b==0) throw 0;
3 return a/b;
4 }
5
6 int main(){
7 try{
8 cout << divi(10,0);
9 }catch(const char* msg){
10 cout << "A";
11 }catch(int){
12 cout << "B";
13 }
14 }下列函数实现排行榜中单个元素的位置调整(类似插入排序的相邻搬移)。当某玩家分数增加,需将其向前移动时, while 循环的条件应为( )。
1 struct Player{ int score; };
2 void up(Player players[], int n, int idx){
3 Player cur = players[idx];
4 int i = idx;
5 while( ____________________ ){
6 players[i] = players[i-1];
7 i--;
8 }
9 players[i] = cur;
10 }下面代码执行结束时,变量 a 的值变成 15。
1 void add10(int &x) { x += 10; }
2
3 int main() {
4 int a = 5;
5 add10(a);
6 }引用一旦绑定某个变量,就不能再绑定其他变量。( )
执行下面代码,输出结果为 5 。
1 int main() {
2 int a[2][3];
3 cout << &a[1][2] - &a[0][1] << endl;
4 return 0;
5 }下面程序可以正常编译并输出 10 。
1 int calc(int x, int y = 10);
2 int calc(int x) { return x * 2; }
3 int calc(int x, int y) { return x * y; }
4
5 int main() {
6 cout << calc(5);
7 }下面程序执行后输出 2010 。
1 int x = 10;
2 void f() { int x = 20; cout << x; }
3
4 int main() {
5 f();
6 cout << x;
7 }在 C++ 中,如果声明了一个指针变量但没有显式初始化,该指针会自动被初始化为 nullptr 。
下面代码没有语法错误。
1 struct GameCharacter {
2 string name;
3 int level;
4 float position_x;
5 float position_y;
6
7 struct Equipment {
8 string weapon;
9 int attack_bonus;
10 int defense_bonus;
11 } equipment;
12
13 struct Skill {
14 string name;
15 int damage;
16 } skills[8];
17 int skill_count;
18 };下面程序能够把 Hello 写入 data.txt 文件中。
1 ofstream fout("data.txt");
2 cout << "Hello";
3 fout.close();由于选择排序和插入排序的时间复杂度均为 ,在任何实际场景下两者的性能表现几乎相同,可以互相替代。
下面用递推方式计算斐波那契数列第 n 项的程序,时间复杂度是O(2n)。
1 int fib(int n) {
2 if (n <= 1) return n;
3 int f0 = 0, f1 = 1, cur = 0;
4 for (int i = 2; i <= n; i++) {
5 cur = f0 + f1;
6 f0 = f1;
7 f1 = cur;
8 }
9 return cur;
10 }试题名称:山之谷
时间限制:1.0 s
内存限制:512.0 MB
3.1.1 题目描述
现有一片山地,可以视为一个N行M列的网格图,第i行j列的海拔为hij。
如果一个单元格的海拔不高于其所有相邻单元格(相邻包括上、下、左、右、左上、右上、左下、右下,最多8个方向)的海拔,则称该单元格为山谷。
请你数一数该片山地中有多少山谷。
3.1.2 输入格式
第一行包含2个整数N,M,表示山地的大小。
之后N行,每行包含 M个整数hi,1,hi,2,…,hi,M,表示海拔。
3.1.3 输出格式
输出 1 行,包含 1 个整数C,表示山谷的数量。
3.1.4 样例
3.1.4.1 输入样例

3.1.4.2 输出样例

3.1.5 样例解释
样例 1 如图所示,绿色单元格代表山谷:

3.1.6 数据范围
保证1≤N,M≤100,1≤hij≤105。
试题名称:礼盒排序
时间限制:1.0 s
内存限制:512.0 MB
3.2.1 题目描述
商店推出了许多礼盒,每个礼盒中包含 k 件商品,每件商品都有一个价格。
现在需要对这些礼盒进行排序,排序规则如下:
1. 先按礼盒总价格从小到大排序;
2. 如果总价格相同,按礼盒中最贵商品的价格从小到大排序;
3. 如果仍然相同,按礼盒中最便宜商品的价格从小到大排序;
4. 如果仍然相同,按礼盒编号从小到大排序。
请输出排序后的礼盒编号。
3.2.2 输入格式
第一行包含两个整数n和k,分别表示礼盒数量和每个礼盒中商品的数量。
接下来 行,每行包含k个整数,第i行表示第i个礼盒中各商品的价格。
3.2.3 输出格式
输出一行,包含排序后的礼盒编号(编号从1开始),用空格分隔。
3.2.4 样例
3.2.4.1 输入样例

3.2.4.2 输出样例

3.2.5 样例解释
4 个礼盒分别为:
排序过程:
1. 按总价排序,3号礼盒总价最小;
2. 其余总价均为 10,再按最大值排序,4号最大值更小;
3. 1号和2号最大值相同,再按最小值排序,2号更小。
最终顺序为:3 4 2 1
3.2.6 数据范围
保证1≤n≤103,1≤k≤10,商品价格≤104。
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
Ctrl / ⌘ + ZCtrl / ⌘ + YCtrl / ⌘ + FCtrl / ⌘ + ACtrl / ⌘ + CCtrl / ⌘ + XCtrl / ⌘ + V工具栏排版按钮编辑时自动保存到本机历史
提交记录AI
作答助手确定要清空代码吗?
确定退出考试模式吗?当前作答进度会暂存在本机会话中,下次可继续。
正在处理答卷,请稍候…