Created
May 30, 2024 11:00 AM
Tags
已知有数组定义:int MyArray[]={10,20,30,40,50,60,70,80,90,100},则以下 程序段:
int s = 0 ;
for(int i=0;i<MyArray.length ;i++) {
if(i%2==1) s =s+ MyArray [i] ;
}
System.out.println(s) ;
执行后 s 的值是:
A.200
B.250
C.350
D.300
答案及解析:
首先,我们来分析程序段的逻辑:
  1. int MyArray[] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100}; 定义了一个整型数组 MyArray,包含10个元素。
  1. int s = 0; 初始化一个整型变量 s,其值为0。
  1. for (int i = 0; i < MyArray.length; i++) 定义了一个循环,从索引0开始,直到数组的长度(即10)。
  1. if (i % 2 == 1) s = s + MyArray[i]; 在循环体内,当索引 i 是奇数时,将对应索引的数组元素值加到变量 s 上。
  1. System.out.println(s); 输出变量 s 的最终值。
现在,我们来计算 s 的值:
  • i = 0 时,i % 2 == 0,不满足条件,s 保持为0。
  • i = 1 时,i % 2 == 1,满足条件,s = 0 + MyArray[1] = 0 + 20 = 20
  • i = 2 时,i % 2 == 0,不满足条件,s 保持为20。
  • i = 3 时,i % 2 == 1,满足条件,s = 20 + MyArray[3] = 20 + 40 = 60
  • i = 4 时,i % 2 == 0,不满足条件,s 保持为60。
  • i = 5 时,i % 2 == 1,满足条件,s = 60 + MyArray[5] = 60 + 60 = 120
  • i = 6 时,i % 2 == 0,不满足条件,s 保持为120。
  • i = 7 时,i % 2 == 1,满足条件,s = 120 + MyArray[7] = 120 + 80 = 200
  • i = 8 时,i % 2 == 0,不满足条件,s 保持为200。
  • i = 9 时,i % 2 == 1,满足条件,s = 200 + MyArray[9] = 200 + 100 = 300
因此,执行后 s 的值是300。
正确答案是:
D. 300
Loading...