单选题 已知在4行3列的全局数组score(4,3)中存放了4个学生3门课程的考试成绩(均为整数),现需要计算每个学生的总分,某人编写程序如下:
Option Base 1
Private Sub Command1_Click()
Dim sum As Integer
sum=0
For i=1 To 4
For j=1 To 3
sum=sum+score(i,j)
Next j
Print"第"&i&"个学生的总分是:";sum
Next i
End Sub
运行此程序时发现,除第1个人的总分计算正确外,其他人的总分都是错误的,程序需要修改。以下修改方案中正确的是______。
  • A.把外层循环语句For i=1 To 4改为For i=1 To 3内层循环语句For j=1 To 3改为For i=1 To 4
  • B.把sum=0移到For i=1 To 4和For j=1 To 3之间
  • C.把sum=sum+score(i,j)改为sum=sum+score(j,i)
  • D.把sum=sum+score(i,j)改为sum=score(i,j)
【正确答案】 B
【答案解析】[考点] 多重循环和数组 [解析] 本题用一个嵌套的For循环来分别计算4个学生3门课程考试成绩的总分。其中,外循环变量i用于记录4个学生的序号,内循环变量j用于记录3门课程的序号,变量sum用于累计每个学生3门课程的成绩总分。在累计每个学生课程成绩总分时,需先将其初始化为0。在本题所提供的四个选项中,只有选项B能实现题目中所要求的功能。