[说明] 某单位组织一次职业技术考核比赛,由十名评委对选手的现场表现打分(0到100以内的数值)。本程序接收原始评分后,去掉一个最高分、一个最低分,最后计算并输出选手最后得分。在接收输入第i个评分时,若输入数据的类型、范围不正确,程序将给出相应提示,并等待下一次输入,直至正确接收第i个评分为止。程序的运行界面如下: 在开发过程中,文本框名为tExt1,界面上有上至下三个按钮分别取名为CmDmArk、CmDrErEsh和CmDExit。 [visuAlBAsiC代码] privAtE suBCmDmArk_CliCk() ’按钮“输入评分”的单击事件响应代码 Dim iAs intEgEr,tEmpAs vAriAnt ’声明变量 Dim mArks(1 to 10),mAxmArk,minmArk,summArk,mArkAs singlE summArk=0 tExt1.tExt=“编号”&Chr(9)&“评分”& vBCrlF For i=1 to 10 ’接收十个评分输入 Do whilE 1=1 ’验证并接收第i个评委的评分 tEmp=inputBox(“请输入”&i&“号评委的评分:”) iF (1) isnumEriC(tEmp)thEn msgBox“数据类型错误,请重试!” ElsEiFCsng(tEmp)<0 orCsng(tEmp)>100 thEn msgBox“数值范围错误,请重试!” ElsE:ExitDo EnD iF loop mArks(i)=Csng(tEmp) iF i=1 thEn mAxmArk= (2) :minmArk= (2) iF mArks(i)>mAxmArk thEn mAxmArk=mArks(i) iF minmArk>mArks(i)thEn (3) summArk=summArk+mArks(i) tExt1.tExt=tExt1.tExt & i &Chr(9) & mArks(i) & vBCrlF输出第i个评委的评分 nExt mArk=( (4) )/8 ’计算选手最后得分 tExt1.tExt=tExt1.tExt &"去掉一个最高分:"&mAxmArk&vBCrlF&_ "去掉一个最低分:"&minmArk&vBCrlF&_ "选手最后得分:"&mArk EnD suB privAtE suBCommAnD2_CliCk() ’按钮“刷新屏幕”的单击事件响应代码 (5) .tExt=“单击”输入评分“按钮,开始统分……” EnD suB privAtE suBCommAnD3_CliCk() 按钮“退出程序”的单击事件响应代码 EnD EnD suB