二级测评试卷八 得分:100    分 
    
	
		
			
选择题 
		
		
			
1、2024年10⽉8⽇,诺贝尔物理学奖“意外地”颁给了两位计算机科学家约翰·霍普菲尔德(John J. Hopfield)和杰弗⾥·⾟顿(Geoffrey E. Hinton)。这两位科学家的主要研究⽅向是(   )            A.天体物理             B.流体力学             C.人工智能             D.量子理论 2、计算机系统中存储的基本单位⽤B来表⽰,它代表的是(  ),⽐如某个照⽚⼤⼩为3MB。            A.Byte             B.Block             C.Bulk             D.Bit 3、C++语句cout << (3 + 3 % 3 * 2 - 1)执⾏后输出的值是( )。            A.-1             B.4             C.56             D.2 4、
	下⾯C++代码执⾏后其输出是( )。
 
	for (int i=0; i<10; i++) 
     printf("%d", i); 
            A.123456789             B.0123456789             C.12345678910             D.012345678910 5、
	下⾯C++代码的相关说法中,正确的是( )。
 
	int tnt;
 
	for (int i=0; i<10; i++) 
        tnt += i; 
 cout << tnt; 
            A.上述代码执⾏后其输出相当于求1-10的和(包含10)             B.上述代码执⾏后其输出相当于求1-10的和(不包含10)             C.上述代码执⾏后其输出相当于求0-10的和(不包含10)             D.上述代码执⾏后将输出不确定的值 6、
	下⾯C++代码执⾏后输出是(     )。
 
	 int i; 
 
	 for (i=1; i<10; i++) 
 
	     if (i % 2) 
 
	         continue; 
 
	     else 
 
	         break; 
 
	 cout << i;
            A.1             B.2             C.9             D.10 7、
	下⾯C++代码执⾏后的输出是(     )。
 
	for (i=0; i<10; i++){ 
 
	     if (i % 3) 
 
	         continue; 
 
	     printf("0#"); 
 
	 } 
 
	 if(i>=10) 
 
	     printf("1#");
            A.0#0#0#0#0#0#0#1#             B.0#0#0#0#0#0#1#             C.0#0#0#0#1#             D.0#0#0#0# 8、
	下⾯C++代码⽤于输出0-100之前(包含100)能被7整除但不能被3整除的数,横线处 填⼊的代码是(    
)
 
	for (i=0; i<100; i++) 
 
	     if(_____________) 
 
	         cout << i << endl;
            A.i % 7 == 0 && i % 3 != 0             B.!(i % 7) && i % 3 != 0             C.i % 7 && i % 3             D.i % 7 == 0 && !(i % 3 == 0) 9、
	下⾯C++代码⽤于求正整数各位数字之和,横线处 填⼊代码是(    )。
 
	 int tnt,  N; 
 printf("请输入正整数:"); 
 cin >> N; 
 tnt = 0; 
 while (N != 0){ 
     ________________ 
     N /= 10; 
 } 
 cout <<tnt; 
            A.tnt = tnt + N % 10             B.tnt +=  N % 10             C.tnt =  N % 10 + tnt             D.tnt =  N % 10 10、
	下图的C++程序执⾏后的输出是(    )。
 
	for (i=0; i<5; i++) 
    for (j=0; j<i; j++) 
         cout <<j; 
            A.0010120123             B.01012012301234             C.001012012301234             D.01012012301234012345 11、
	下⾯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
 
	}
 
	 
            A.将L1注释的 printf("\n") 移到L2注释所在⾏,效果相同             B.将L1注释的 printf("\n") 修改为 print("%c", '\n') 效果相同             C.将 Lie * Hang > 9 修改为 Lie * Hang >= 10 效果相同             D.将 Lie * Hang > 9 修改为 Hang * Lie > 9 效果相同 12、
	在数学中N!表⽰N的阶乘,即1到N的乘积,如 3!=1*2*3 。下⾯的C++⽤于求1-N的阶乘之和,如N为3,则是 1!+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;
            A.nowNum *= i;          tnt += nowNum;             B.nowNum = nowNum * i;               tnt = tnt + nowNum;             C.nowNum *= i;                tnt = nowNum + tnt;             D.nowNum = nowNum + i;                tnt *= nowNum; 13、
	下⾯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);
            A.M - 2             B. M - 1             C. M             D.M + 1 14、
	下⾯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; 
 } 
            A.height - i                      2 * i             B.height                         2 * i             C.height - i                     2 * i + 1             D.height - i - 1               2 * i + 1 15、
	下⾯C++代码执⾏后的输出是30,则横线处不能填⼊(    )。
 
	int a=10, b=20, c=30; 
 
	cout << _____________________ << endl; 
 
	cout << endl;
            A.max(max(a, b), c)             B.min(a+b, c)             C.sqrt(a+b+c)             D. (a+b+c)/2