#GESP1102. [GESP202412二级] 客观题

[GESP202412二级] 客观题

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

  1. 2024年10⽉8⽇,诺贝尔物理学奖“意外地”颁给了两位计算机科学家约翰·霍普菲尔德(John J. Hopfield)和杰 弗⾥·⾟顿(Geoffrey E. Hinton)。这两位科学家的主要研究⽅向是

{{ select(1) }}

  • 天体物理
  • 流体⼒学
  • ⼈⼯智能
  • 量⼦理论
  1. 计算机系统中存储的基本单位⽤B来表⽰,它代表的是( ),⽐如某个照⽚⼤⼩为3MB。

{{ select(2) }}

  • Byte
  • Block
  • Bulk
  • Bit
  1. C++语句cout << (3 + 3 % 3 * 2 - 1)执⾏后输出的值是 ( )。

{{ select(3) }}

  • 1-1
  • 44
  • 5656
  • 22
  1. 下⾯C++代码执⾏后其输出是 ( )。
for (int i=0; i<10; i++)
	printf("%d",i);

{{ select(4) }}

  • 123456789123456789
  • 01234567890123456789
  • 1234567891012345678910
  • 012345678910012345678910
  1. 下⾯C++代码的相关说法中,正确的是 ( )。
int tnt;
for (int i=0; i<10; i++)
	tnt += i;
cout << tnt;

{{ select(5) }}

  • 上述代码执⾏后其输出相当于求1-10的和(包含10)
  • 上述代码执⾏后其输出相当于求1-10的和(不包含10)
  • 上述代码执⾏后其输出相当于求0-10的和(不包含10)
  • 上述代码执⾏后将输出不确定的值
  1. 下⾯C++代码执⾏后输出是

    int i;
    
    for (i=1; i<10; i++)
    	if (i % 2)
    		continue;
    	else
    		break;
    
    cout << i;
    

    {{ select(6) }}

  • 11
  • 22
  • 99
  • 1010
  1. 下⾯C++代码执⾏后的输出是( ) 。
for (i=0; i<10; i++){
	if (i % 3)
		continue;
	printf("0#");
}
if(i>=10)
	printf("1#");

{{ select(7) }}

  • 0#0#0#0#0#0#0#1#

  • 0#0#0#0#0#0#1#

  • 0#0#0#0#1#

  • 0#0#0#0#

  1. 下⾯C++代码⽤于输出0-100之前(包含100)能被7整除但不能被3整除的数,横线处不能填⼊的代码是 ( )。

    for (i=0; i<100; i++)
    	if(_____________)
    		cout << i << endl;
    

{{ select(8) }}

  • i % 7 == 0 && i % 3 != 0
  • !(i % 7) && i % 3 != 0
  • i % 7 && i % 3
  • i % 7 == 0 && !(i % 3 == 0)
  1. 下⾯C++代码⽤于求正整数各位数字之和,横线处不应填⼊代码是

    int tnt, N;
    printf("请输入正整数:");
    cin >> N;
    tnt = 0;
    while (N != 0){
    	________________
     	N /= 10;
    }
    cout <<tnt;
    

{{ select(9) }}

  • tnt = tnt + N % 10
  • tnt += N % 10
  • tnt = N % 10 + tnt
  • tnt = N % 10
  1. 下图的C++程序执⾏后的输出是 ( )。

    for (i=0; i<5; i++)
    	for (j=0; j<i; j++)
    		cout <<j;
    

{{ select(10) }}

  • 0010120123
  • 01012012301234
  • 001012012301234
  • 01012012301234012345
  1. 下⾯C++代码⽤于实现图⽰的九九乘法表。相关说法错误的是 ( )。

    /*
     1*1=1
     1*2=2  2*2=4
     1*3=3  2*3=6  3*3=9
     1*4=4  2*4=8  3*4=12 4*4=16
     1*5=5  2*5=10 3*5=15 4*5=20 5*5=25
     1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
     1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
     1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
     1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
     */
     for (int Hang=1; Hang<10; Hang++){
     	for (int Lie=1; Lie<Hang+1; Lie++){
     		if (Lie * Hang > 9)
     			printf("%d*%d=%d ", Lie, Hang, Lie*Hang);
     		else
     			printf("%d*%d=%d  ", Lie, Hang, Lie*Hang);
     		// L2
     	}
     	printf("\n"); // L1
     }
    

{{ select(11) }}

  • 将L1注释的printf("\n") 移到L2注释所在⾏,效果相同
  • 将L1注释的printf("\n") 修改为 print("%c", '\n') 效果相同
  • 将Lie * Hang > 9 修改为 Lie * Hang >= 10 效果相同
  • 将Lie * Hang > 9 修改为 Hang * Lie > 9 效果相同
  1. 在数学中N!表⽰N的阶乘,即1到N的乘积,如 是1! 3!=123 。下⾯的C++⽤于求1-N的阶乘之和,如N为3,则 +2!+3! 。下⾯代码段补充选项后⽤于实现上述功能,其中不能实现阶乘和的选项是( )。

    int N;
    
    cin >> N;
    
    int tnt=0, nowNum = 1; //tnt保存求和之值,当前N的阶乘
    
    for (int i=1; i < N + 1; i++){
    	______________ // 基于上一个计算出当前数的阶乘
    	______________ // 从1到i每个数阶乘之和
    }
    
    cout << tnt;
    

{{ select(12) }}

  • nowNum *= i;
    tnt += nowNum;
    
  • nowNum = nowNum * i;
    tnt = tnt + nowNum;
    
  • nowNum *= i;
    tnt = nowNum + tnt;
    
  • nowNum = nowNum + i;
    tnt *= nowNum;
    
  1. 下⾯C++代码⽤于输出N和M之间(可以包括N和M)的孪⽣素数。孪⽣素数是指间隔为2的两个数均为素 数,如11和13分别是素数,且间隔为2。isPrime(N)⽤于判断N是否为素数的函数。为完成上述功能,横线处应填上的 代码是 ( )。

    int N,M;
    
    //本题假设N小于M
    cin >> N >> M;
    
    for (int i = N; i < __________; i++)
    	if (isPrime(i) && isPrime(i + 2))
    		printf("%d %d\n",i, i + 2);
    

{{ select(13) }}

  • M2M-2
  • M1M-1
  • MM
  • M+1M+1
  1. 下⾯C++代码实现输出如下图形,横线应填⼊的代码是 ( )。

     /*
     高度:5
     *
     ***
     *****
     *******
     *********
     */
     int height;
     cout << "高度: ";
     //获取用户输入的高度
     cin >> height;
     for (i=0; i<height; i++){
     	//打印每行前面的空格
    	for (j = 0; j < _______________; j++)
     		cout << " ";
     	//打印每行的星号
    	for (k = 0; k < _______________; k++)
     		cout << "*";
     	//输出一行后,换行
    	cout << endl;
     }
    

{{ select(14) }}

  • height - i
    2 * i
    
  • height
    2 * i
    
  • height - i
    2 * i + 1
    
  • height - i - 1
    2 * i + 1
    
  1. 下⾯C++代码执⾏后的输出是30,则横线处不能填⼊ ( )。

    int a=10,b=20,c=30;
    
    cout << _____________________ << endl;
    
    cout << endl;
    

{{ select(15) }}

  • max(max(a, b), c)
  • min(a+b, c)
  • sqrt(a+b+c)
  • (a+b+c)/2

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

  1. 在Windows的资源管理器中为已有⽂件A建⽴副本的操作是Ctrl+C,然后Ctrl+V。( ) {{ select(16) }}
  • 正确
  • 错误
  1. 在C++代码中,假设N为正整数,则 cout << (N - N / 10 * 10)将获得N的个位数。( )
{{ select(17) }}
  • 正确
  • 错误
  1. 在C++语句 cout << (10 <= N <= 12) 中,假设N为12,则其输出为1。( )

    {{ select(18) }}

  • 正确
  • 错误
  1. 如果C++表达式 int(sqrt(N))*int(sqrt(N)) == N 的值为True,则说明N为完全平⽅数,如4、9、25 等。( )

{{ select(19) }}

  • 正确
  • 错误
  1. 下⾯C++代码执⾏后将输出2*3=6。 ( )

    int a = 2, b = 3;
    printf("%%a*%%b=%d",a*b);
    

    {{ select(20) }}

  • 正确

  • 错误

  1. 以下C++代码因为循环变量为将导致错误,即不能作为变量名称,不符合C++变量命名规范。( )

    for (int _ = 0; _ < 10; _++)
     continue;
    

    {{ select(21) }}

  • 正确
  • 错误
  1. 下⾯C++代码执⾏后因为有break,将输出0。

     int i;
     for (i = 0; i < 10; i++){
        continue;
        break;
     }
     cout << i;
    

{{ select(22) }}

  • 正确
  • 错误
  1. 下⾯的C++代码执⾏后将输出18⾏“OK”。( )

    int i,j;
     for (i = 8; i > 2; i-=2)
        for (j =0; j < i; j++)
            printf("OK\n");
    

    {{ select(23) }}

  • 正确
  • 错误
  1. 将下⾯C++代码中的i = 1调整为i = 0的输出结果相同。( )

     int i;
     int cnt = 0;
     for (i = 1; i < 5; i++)
       if(i%2) cnt += 1;
     cout << cnt;
    

    {{ select(24) }}

  • 正确
  • 错误
  1. 下⾯两段C++代码都是⽤于求1-10的和,其运⾏结果相同。通常说来,for循环都可以⽤while循环实现。( )

     int tnt;
     int i;
     tnt = 0;
     for (i = 1; i < 10 + 1; i++)
        tnt += i;
     cout << tnt << endl;
    
     int tnt;
     int i;
     tnt = 0;
     i = 1;
     while (i <= 10){
        tnt += i;
        i += 1;
     }
     cout << tnt << endl;
    

    {{ select(25) }}

  • 正确

  • 错误