#33. 1GESP2023年12月C++1级真题

1GESP2023年12月C++1级真题

一、单选题

  1. 以下C++不可以作为变量的名称的是( )。 {{ select(1) }}
  • CCF GESP
  • ccfGESP
  • CCFgesp
  • CCF_GESP
  1. C++表达式10 - 3 * (2 + 1) % 10 的值是( )。 {{ select(2) }}
  • 0
  • 1
  • 2
  • 3
  1. 假设现在是上午十点,求出N小时(正整数)后是第几天几时,如输入20小时则为第2天6点,如N输入4则为今天14点。为实现相应功能,应在横线处填写代码是( )。
int N,dayX,hourX;
cin >>N;
dayX=___,hourX=___;
if (dayX== 0)
cout<<"今天"<<hourX<<"点";
else 
cout<<"第"<<(dayX+1)<<"天"<<hourX<<"点";

{{ select(3) }}

  • (10 + N) % 24 , (10 + N) / 24
  • (10 + N) / 24 , (10 + N) % 24
  • N % 24 , N / 24
  • 10 / 24 , 10 % 24
  1. 下面的程序用于判断N是否为偶数,横线处应填写代码是( )。
cin >> N;
if (___)
cout<<"偶数";
else 
cout<<"奇数";

{{ select(4) }}

  • N % 2 == 0
  • N % 2 = 0
  • N % 2
  • N % 2 != 0
  1. 下面对C++代码执行后输出的描述,正确的是( )。
cin >> N;
cnt=0;
for(int i=1;i<N;i++)
cnt +=1;
cout << cnt;

{{ select(5) }}

  • 如果输入的N是小于等于2整数,第5行将输出0。
  • 如果输入的N是大于等于2整数,第5行将输出N-1。
  • 如果输入的N是大于等于2整数,第5行将输出N。
  • 以上说法均不正确。
  1. 下面C++代码执行后的输出是( )。
cnt=0; 
for(int i=1;i<10;i++){
cnt += 1;
i+=2;
}
cout << cnt;

{{ select(6) }}

  • 10
  • 9
  • 3
  • 1
  1. 下面C++代码执行后的输出是( )。
cnt=0;
for(int i=1;i<20;i++){
if(i%2) 
continue;
else if(i%3==0 && i%5==0){
cnt += i;
break;
}
}
cout << cnt;

{{ select(7) }}

  • 90
  • 44
  • 20
  • 10
  1. 下面C++代码执行后的输出是( )。
N=10;
cnt=0;
while(1){
if(N == 0) 
break; 
cnt += 1;
N-=2;
}
cout << cnt;

{{ select(8) }}

  • 11
  • 10
  • 5
  • 4
  1. 下面C++代码用于判断一个数是否为质数(素数),在横线处应填入代码是( )。
cin>>N; 
cnt=0; 
for (int i=1;i<N+1;i++)
if(N%i==0)
___;
if(cnt==2)
cout<<N<<"是质数。";
else 
cout<<N<<"不是质数。";

{{ select(9) }}

  • cnt = 1
  • cnt = 2
  • cnt =+ 1
  • cnt += 1
  1. 对下面的代码,描述正确的是( )。
#include <stdlib.h>
using namespace std;
int main(){
int arr[]={2,6,3,5,4,8,1,0,9,10};
for(int i=0;i<10;i++) 
cout << arr[i]<<" ";
cout <<i<< endl;
cout << endl; 
return 0;
}

{{ select(10) }}

  • 输出2 6 3 5 4 8 1 0 9 10 10
  • 输出2 6 3 5 4 8 1 0 9 9
  • 输出2 6 3 5 4 8 1 0 9 10
  • 提示有编译错误
  1. 执行下面C++代码后输出是( )。
cnt=0;
for(i=10;i>3;i-=3)
cnt= cnt +i;
cout << cnt;
{{ select(11) }}
  • 3
  • 21
  • 27
  • 49
  1. 定义变量char c ,下面对c 赋值的语句,不符合语法的是( )。 {{ select(12) }}
  • c = (char)66;
  • c = (char)(66);
  • c = char(66);
  • c = char 66;
  1. 下图所示C++代码对大写字母'A' 到'Z' 分组,对每个字母输出所属的组号,那么输入'C' 时将输出的组号是?( )。
char c; 
while (1){ 
cin >> c;
if(c=='q') 
break; 
switch(c){ 
case 'A': cout <<"1 ";break; 
case 'B':cout <<"3";
case 'C': cout <<"3";
case 'D': cout <<"5";break; 
case 'E':cout <<"5";break;
default: cout <<"9";
}
} 
cout << endl;
{{ select(13) }}
  • 3
  • 3 5
  • 3 5 9
  • 以上都不对
  1. 某公司新出了一款无人驾驶的小汽车,通过声控智能驾驶系统,乘客只要告诉汽车目的地,车子就能自动选择一条优化路线,告诉乘客后驶达那里。请问下面哪项不是驾驶系统完成选路所必须的。( ) {{ select(14) }}
  • 麦克风
  • 扬声器
  • 油量表
  • 传感器
  1. 现代计算机是指电子计算机,它所基于的是( )体系结构。 {{ select(15) }}
  • 艾伦·图灵
  • 冯·诺依曼
  • 阿塔纳索夫
  • 埃克特-莫克利

二、判断题

  1. C++表达式int(3.14) 的值为3。 {{ select(16) }}
  • 正确
  • 错误
  1. C++语句cout << (2 * 3, 3 % 10, 2+3) 的输出为6,3,5 。 {{ select(17) }}
  • 正确
  • 错误
  1. for(int i = 1; i < 10; i += 3;) ; 表示i从1开始到10结束间隔为3,相当于1、4、7、10。 {{ select(18) }}
  • 正确
  • 错误
  1. C++表达式010+100+001的值为111。 {{ select(19) }}
  • 正确
  • 错误
  1. if 语句中的条件表达式的结果可以为int 类型。 {{ select(20) }}
  • 正确
  • 错误
  1. 在下面的C++代码while(1) continue; 中,由于循环中的continue 是无条件被执行,因此将导致死循环。 {{ select(21) }}
  • 正确
  • 错误
  1. C++表达式 ('1'+'1''2'? flag=1:flag=2) 的结果值和表达式 (flag2) 的相同。 {{ select(22) }}
  • 正确
  • 错误
  1. 在C++的程序中,不能用scanf 作为变量名。 {{ select(23) }}
  • 正确
  • 错误
  1. 小杨最近在准备考GESP,他用的Dev C++来练习和运行程序,所以Dev C++也是一个小型操作系统。 {{ select(24) }}
  • 正确
  • 错误
  1. 任何一个while 循环都可以转化为等价的for 循环。 {{ select(25) }}
  • 正确
  • 错误