#J4903. CCF-GESP编程能力等级认证四级强化【1】

CCF-GESP编程能力等级认证四级强化【1】

一、选择题。(15题,每题2分,共30分)

  1. 办公室自动化(OA)是计算机的一项应用,按计算机应用的分类,它属于? {{ select(1) }}
  • 科学计算
  • 辅助设计
  • 实时控制
  • 信息处理

  1. 下面流程图的输出结果是?

{{ select(2) }}

  • 2498
  • 2500
  • 2501
  • 2052

  1. int i, j=7, *p=&i;的前提下,以下说法中与i = j等价的语句是? {{ select(3) }}
  • i = *p;
  • *p=*&j;
  • i = &j;
  • i = **p;

  1. 下面能正确进行字符串“ABCDE”赋值操作的语句是? {{ select(4) }}
  • char s[5]={"ABCDE"};
  • char s[5]={'A', 'B', 'C', 'D', 'E'};
  • char *s; s="ABCDE";
  • char s[5]; s = "ABCDE";

  1. 若已知定义char s[10],则下面表达式中不能正确表示s[1]的地址是? {{ select(5) }}
  • s+1
  • s++
  • &s[0] + 1
  • &s[1]

  1. 以下程序的输出结果是?

image

{{ select(6) }}

  • 1 2 1 2
  • 1 2 2 1
  • 2 1 2 1
  • 2 1 1 2

  1. 下面C++代码执行以后输出的是?

image

{{ select(7) }}

  • 8 10
  • 6 8
  • 7 9
  • 6 10

  1. 设有 char *s = "ABCDE"; cout<<*(s + 1) <<endl;输出结果是? {{ select(8) }}
  • A
  • B
  • ABCD
  • BCD

  1. 以下不能对二维数组a进行正确初始化的语句是? {{ select(9) }}
  • int a[2][3]= {0};
  • int a[][3] = { {0 ,1}, {0} };
  • int a[2][3] = { {0, 1}, {2, 3}, {4, 5} };
  • int a[][3] = {0, 1, 2, 3, 4, 5};

  1. 下列排序算法中,某一趟结束后未必能选择除一个元素放在其最终位置上的是? {{ select(10) }}
  • 冒泡排序
  • 简单选择排序
  • 直接插入排序
  • 快速排序

  1. 对数组名作函数的参数中,下面描述正确的是? {{ select(11) }}
  • 数组名作函数的参数,调用时将实参数组复制给形参数组
  • 数组名作函数的参数,主调函数和被调函数共用一段存储单元
  • 数组名作参数时,形参定义的数组长度不能省略
  • 数组名作参数,不能改变主调函数中的数据

  1. 下列叙述中错误的是? {{ select(12) }}
  • catch(…)语句可以捕获所有类型的异常
  • try-catch结构中,一个try块可以有多个catch块
  • catch(…)语句可以放在catch语句组的中间
  • 程序中try语句和catch语句是一个整体,缺一不可

  1. 已知有n * m个元素存储在二维数组中,以下哪条语句可以实现二维数组的左右翻转? {{ select(13) }}
  • for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) swap (a[i][j], a[i][m - 1 - j]);
  • for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) swap( a[i][j], a[n-1-i][j]);
  • for (int i = 0; i < n; i++) for (int j = 0; j < m / 2; j++) swap (a[i][j], a[i][m - 1 - j]);
  • for (int i = 0; i < n / 2; i++) for (int j = 0; j < m; j++) swap( a[i][j], a[n-1-i][j])

  1. 下面程序的计算结果是?

image

{{ select(14) }}

  • 0
  • 40
  • 45
  • 无法确定

  1. 下列程序的运行结果是?

image

{{ select(15) }}

  • zhanghua 2025
  • xiaoli 2025
  • zhanghua 2023
  • xiaoli 2023

二、判断题​。(10题,每题2分,共20分)

  1. >=>>=都是C++语言的运算符。 {{ select(16) }}


  1. 如果使用数组名当作函数调用的实参,会将该数组第一个元素的值传给形参。 {{ select(17) }}


  1. 函数在定义时有时可以不返回数值,也可以返回多个数值。 {{ select(18) }}


  1. 定义数组int a[] = {10, 20, 30}, *p = a;,当执行p++;后,p向后移动一个字节。 {{ select(19) }}


  1. 已知int a[3][2] = {3, 2, 1},执行表达式a[0][0] / a[0][1] / a[0][2]的结果无法确定。 {{ select(20) }}


  1. 此函数的功能是用于计算数字x二进制中1的个数。

image

{{ select(21) }}



  1. 有如下定义int a = 3, b = a << 3;,那么b的值为27。 {{ select(22) }}


  1. 定义a为整型变量值为6,执行a = ~a后 a 的值会是−7。 {{ select(23) }}


  1. 世界上第一台通用电子计算机“ENIAC”是二进制计算机。 {{ select(24) }}


  1. 使用文件流操作文件可以分为三个步骤:打开文件、读写文件、关闭文件。 {{ select(25) }}


​三、​编程题。(2题,每题25分,共50分)

  1. 【 开心数】

  2. 【字符串变变变】