ccf#P24141. GESP 2403 C++ 四级(客观题)

GESP 2403 C++ 四级(客观题)

  1. 若函数声明为 int f(int &x){ x+=3; return x; },则对声明的变量 int a=3,下面哪个调用能够改变 a 的值( )。{{ select(1) }}
  • f(&a);
  • f(*a);
  • f(a);
  • f(a-3);
  1. 下面 C++ 代码执行后,输出的是( )。
int main()
{
    int x[] = {2, 0, 2, 4};
    char geSP[] = "Grade Examination of SP";
 
    cout << geSP[sizeof(x)] << endl;
 
    cout << endl;
    return 0;
}

{{ select(2) }}

  • G
  • e
  • n
  • P
  1. 下面 C++ 代码执行后输出是( )。
int foo(float *f)
{
    return int(*f * 2);
}
 
int main()
{
    float fnum[10] = {1.1};
    fnum[1] = foo(fnum);
    cout << fnum[0] + fnum[1] << endl;
 
    cout << endl;
    return 0;
}

{{ select(3) }}

  • 1
  • 1.1
  • 3
  • 3.1
  1. 对二维数组 int arr[3][16];,则 arr[1] 占用内存的大小为( )字节。{{ select(4) }}
  • 4
  • 16
  • 48
  • 64
  1. 对二维数组 int arr[3][16];,若 arr 的地址是 0x28cbc0,则 arr[1] 的值是( )。{{ select(5) }}
  • 0x28cbc4
  • 0x28cbd0
  • 0x28cc00
  • 不确定
  1. 下面 C++ 代码执行后输出是( )。
int main()
{
    char *p = "I love GESP!";
    cout << p + 5 << endl;
 
    cout << endl;
    return 0;
}

{{ select(6) }}

  • e
  • I lov
  • e GESP!
  • GESP!
  1. 下面 C++ 代码执行以后输出的是( )。
int rc = 5;
int main()
{
    int rc;
    cout << ++rc << endl;
 
    cout << endl;
    return 0;
}

{{ select(7) }}

  • 0
  • 1
  • 6
  • 不确定
  1. 下面 C++ 函数中采用的算法是( )。
int fib(int n)
{
    int i, f[n] = {0, 1};
 
    for (int i = 2; i <= n; i++)
        f[i] = f[i - 1] + f[i - 2];
 
    return f[n];
}

{{ select(8) }}

  • 递推
  • 递归
  • 迭代
  • 循环
  1. 插入排序在最好情况下的时间复杂度是( )。{{ select(9) }}
  • O(1)
  • O(N/2)
  • O(N)
  • O(N^2)
  1. 在如下的 C++ 代码执行后,设第 11 和 12 行的输出地址值分别为 X 和 Y,则下面正确的是( )。
struct pass {
    int no;
    char name[20];
    int level;
};
 
int main()
{
    struct pass XiaoYang;
 
    cout << "&XiaoYang=" << &XiaoYang << endl;     //第11行
    cout << "&(XiaoYang.no)=" << &(XiaoYang.no) << endl; //第12行
 
    cout << endl;
    return 0;
}

{{ select(10) }}

  • X>Y
  • X=Y
  • X<Y
  • 不确定
  1. 如果文件 1.txt 中的内容如下,则执行下面 C++ 代码时,注释了 #### 那行代码所输出的 x 的值为( )。
50 2024 3.16 I
love
GESP!
int main()
{
    ifstream fin;
    string line;
    int x;
    fin.open("1.txt", ios::in);
 
    for (int i = 0; i < 2; i++) {
        fin >> line;
        cout << line << endl;
    }
    fin >> x;
    cout << x << endl; //####
    
    cout << endl;
    return 0;
}

{{ select(11) }}

  • 5
  • 2024
  • 3
  • 0
  1. 执行下列 C++ 代码时输出中的第 2 行是( )。
int main()
{
    char *s[] = {(char*)"2024", (char*)"3.16", (char*)"GESP"};
 
    for (int i = 0; i < 2; i++) {
        cout << *s + i << endl;
    }
 
    cout << endl;
    return 0;
}

{{ select(12) }}

  • 2024
  • 3.16
  • 024
  • 3
  1. C++ 语言中下面哪个关键字能够限定对象的作用域( )。{{ select(13) }}
  • extern
  • static
  • inline
  • public
  1. 小杨的父母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是( )。{{ select(14) }}
  • 小程序
  • 计时器
  • 操作系统
  • 神话人物
  1. 中国计算机学会(CCF)在 2024 年 1 月 27 日的颁奖典礼上颁布了王选奖,王选先生的重大贡献是( )。{{ select(15) }}
  • 制造自动驾驶汽车
  • 创立培训学校
  • 发明汉字激光照排系统
  • 成立方正公司
  1. 对 int a[] = {2, 0, 2, 4, 3, 1, 6},执行第一趟选择排序处理后 a 中数据变为 {0, 2, 2, 4, 3, 1, 6}。( ){{ select(16) }}
  • 正确
  • 错误
  1. 如果待排序数据不能都装进内存,需要使用外排序算法。( ){{ select(17) }}
  • 正确
  • 错误
  1. 定义变量 int a = 5,则 cout << &++a 会输出 6。( ){{ select(18) }}
  • 正确
  • 错误
  1. 两个函数之间可以使用全局变量来传递数据。( ){{ select(19) }}
  • 正确
  • 错误
  1. 定义数组 int a[2024][3][16] = {2, 0, 2, 4, 3, 1, 6},则 cout << a[2023][2][15] 的结果不确定。( ){{ select(20) }}
  • 正确
  • 错误
  1. 在 C++ 语言中,函数的参数为指针时,可以在函数内部修改该参数的值。( ){{ select(21) }}
  • 正确
  • 错误
  1. 在 C++ 语言中 try 子句里抛出的结构体等类型的异常无法被 catch 捕获。( ){{ select(22) }}
  • 正确
  • 错误
  1. C++ 语言中 cout << 9^2 << endl; 会输出 81。( ){{ select(23) }}
  • 正确
  • 错误
  1. 小杨今年春节回奶奶家了,奶奶家的数字电视要设置 IP 地址并接入到 WIFI 盒子才能收看节目,那这个 WIFI 盒子具有路由器的功能。( ){{ select(24) }}
  • 正确
  • 错误
  1. 任何一个 for 循环都可以转化为等价的 while 循环( )。{{ select(25) }}
  • 正确
  • 错误