当前位置:IT认证>BASIC题库

问题:[问答题]

[问答题] 在考生文件夹下有一个工程文件sjt5.vbp,其功能是:找出矩阵元素的最大值,并求出矩阵对角线元素之和,窗体外观如图8所示。程序运行时,矩阵数据被放入二维数组a中。当单击“找矩阵元素最大值”命令按钮时,找出矩阵中最大的数,并显示在标签Label3中。当单击“对角线元素之和”命令按钮时,计算矩阵主对角线元素之和,并显示在标签Label4中。文件中已给出部分程序,请编写“找矩阵元素最大值”及“对角线元素之和&rdq

  

参考答案:

 [操作步骤]

第l步:打开工程sjtE.vbp。

第B步:编写程序,参考程序如下。

PrivateSubCommandA_Click()

考生应编写的程序

DimiAsInteger,jAsInteger,maxAsInteger

max=a(A,A)

Fori=AToD

Forj=AToD

Ifa(i,j)>maxThenmax=a(i,j)

Nextj

Nexti

LabelC=max

’不得修改以下部分

saveLabelC

EndSub

PrivateSubCommandB_Click()

’考生应编写的程序

DimsumAsInteger,iAsInteger,jAsInteger

sum=0

Fori=AToD

Forj=AToD

Ifi=jThensum=sum+a(i,j)

Nextj

Nexti

LabelD=sum

’不得修改以下部分

saveLabelD

EndSub

第C步:调试、运行并保存程序。

为计算矩阵主对角线元素之和,也要遍历二维数组,找出行标和列标相等的元素即为二维数组(矩阵)对角线上的元素,将这样的元素累加起来就得到了对角线上元素的和。

  参考解析

为找出矩阵中最大的数,原程序在Form_Load事件过程中将所有数据读入到二维数组A中,先假定数组中任意一个元素为最大值,再遍历整个数组,用数组元素与假定的最大值比较,如果发现新的更大的值,则将新的更大的值假定为最大值;继续比较,直到数组的最后一个元素比较完毕为止。

微信端