#2535. GESP C++ 三级 2024年3月(客观题)

GESP C++ 三级 2024年3月(客观题)

一、单选题(每题2分,共30分)

单选题

第1题. 整数-5的16位补码表示是( )。

{{ select(1) }}

  • A. 1005
  • B. 1006
  • C. FFFA
  • D. FFFB

第2题. 如果16位短整数-2的二进制是"FFFE",则短整数-4的十六进制是( )。

{{ select(2) }}

  • A. FF04
  • B. FFFA
  • C. FFFC
  • D. FFFH

第3题. 下面C++代码执行后的输出是( )。

int main() {
	cout << (3|16) << endl;
	cout << endl;
	return 0;
}

{{ select(3) }}

  • A. 3
  • B. 16
  • C. 19
  • D. 48

第4题. 定义整数int x=-5,则执行C++代码cout << (x == (x<<1>>1)) 输出是( )。

{{ select(4) }}

  • A. 0
  • B. 1
  • C. -5
  • D. 5

第5题. 已知字符'0'的ASCII编码的十进制表示为48,则执行下面C++代码后,输出是( )。

int main() {
	string s="316";
	int n=s.length();
	int x=0;
	for(int i = 0; i < n; i++)
		x += s[i];
	cout << x << endl;
	cout << endl;
	return 0;
}

{{ select(5) }}

  • A. 10
  • B. 58
  • C. 154
  • D. 316

第6题. 下面C++代码执行后数组中大于0的数的特征是( )。

int main() {
	int a[20],i;
	for(i = 0; i < 20; i++)
		a[i] = i+1;
	for(int i = 0; i < 20; i++)
		if((a[i]%2)&&(a[i]%3))
			a[i] = 0;
	for(i = 0; i < 20; i++)
		if(a[i])
			cout << a[i] << " ";
	cout << endl;
	return 0;
}

{{ select(6) }}

  • A. 2的倍数
  • B. 3的倍数
  • C. 能被2或3整除的数
  • D. 能被2和3同时整除的数

第7题. 执行下面C++代码后输出的第一个数是( )。

int main() {
	int a[20],i;
	for(i = 0; i < 20; i++)
		a[i] = i+1;
	for( ; i > 0; i--)
		cout << a[i-1] << " ";
	cout << endl;
	return 0;
}

{{ select(7) }}

  • A. 20
  • B. 19
  • C. 1
  • D. 不确定

第8题. 在下列代码的横线处填写( ),可以使得输出是GESP IS INTERESTING 。

int main() {
	string str="gEsP is Interesting";
	int x = str.length();
	for(int i = 0; i < x; i++)
		if ((str[i]>='a') && (str[i]<='z'))
			________________________;
	cout << str << endl;
	cout << endl;
	return 0;
}

{{ select(8) }}

  • A. str[i]+='a'-'A'
  • B. str[i]+=20
  • C. str[i]+='A'-'a'
  • D. 无法实现

第9题. 假设英文句子由若干词构成。下面C++代码统计输出的词数是( )。

int main() {
	string str="gEsP is Interesting !";
	int x = str.length();
	int nwords = 0;

	for(int i = 0; i < x; i++)
		if (str[i]==' ') {
			nwords++;
			while(str[++i]==' ') ;
		}
	cout << nwords << endl;
	cout << endl;
	return 0;
}

{{ select(9) }}

  • A. 1
  • B. 2
  • C. 3
  • D. 4

第10题. C++的字符变量的码值是整数,下面字面量形式的字符码值最大的是( )。

{{ select(10) }}

  • A. 100
  • B. 075
  • C. 0x70
  • D. 0x60

第11题. 下面C++程序执行的结果是( )。

int main() {
	int a[20],i;
	int cnt=0;
	for(i = 0; i < 20; i++)
		a[i] = i+1;
	for( ; i > 1; i--)
		if((a[i-1]+a[i-2])%3)
			cnt++;
	cout << cnt << endl;
	cout << endl;
	return 0;
}

{{ select(11) }}

  • A. 5
  • B. 6
  • C. 10
  • D. 12

第12题. 定义字符数组char str[20] = {'G', 'E', 'S', 'P'}; ,则str 的字符串长度为( )。

{{ select(12) }}

  • A. 4
  • B. 5
  • C. 19
  • D. 20

第13题. 定义整型变量int a=3, b=16 ,则a|b 的值和a+b 的关系是( )。

{{ select(13) }}

  • A. 大于
  • B. 等于
  • C. 小于
  • D. 等于或小于

第14题. 小杨的父母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是( )。

{{ select(14) }}

  • A. 小程序
  • B. 计时器
  • C. 操作系统
  • D. 神话人物

第15题. 中国计算机学会(CCF)在2024年1月27日的颁奖典礼上颁布了王选奖,王选先生的重大贡献是( )。

{{ select(15) }}

  • A. 制造自动驾驶汽车
  • B. 创立培训学校
  • C. 发明汉字激光照排系统
  • D. 成立方正公司

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

第16题. 任意整数a的二进制反码与补码都有1位不同。 {{ select(16) }}

  • ×

第17题. 对整型变量int a = 3,执行C++代码a<<2 将把2输出到a 中。 {{ select(17) }}

  • ×

第18题. 下面C++代码可以计算1到100的累加和,采用的是穷举法。

int main() {
	int i,sum=0;
	for(int i = 1; i <= 100 ; i++)
		sum += i;
	cout << sum << endl;
	cout << endl;
	return 0;
}

{{ select(18) }}

  • ×

第19题. 一个int 类型变量a,执行操作(a<<2>>2) 后的值一定是a 。( )

{{ select(19) }}

  • ×

第20题. 在C++语言中,(010<<1) 执行结果是100 。( )

{{ select(20) }}

  • ×

第21题. 执行下面C++代码后将输出2 。( )

int main() {
	string str="gEsP is Interesting";
	int x = str.find("s");
	cout << x << endl;
	cout << endl;
	return 0;
}

{{ select(21) }}

  • ×

第22题. 在C++语言中,字符数组被定义时,它的大小可以调整。( )

{{ select(22) }}

  • ×

第23题. 对定义的数组int a[7]={2,0,2,4,3,1,6} ,可以用简单循环就找到其中最小的整数。( )

{{ select(23) }}

  • ×

第24题. 小杨今年春节回奶奶家了,奶奶家的数字电视要设置ip地址并接入到WIFI盒子才能收看节目,那这个WIFI盒子具有路由器的功能。( )

{{ select(24) }}

  • ×

第25题. 任何一个for 循环都可以转化为等价的while 循环( )。

{{ select(25) }}

  • ×

Statistics

Related

In following contests:

GESP 三级测试1