在考生文件夹下有一个工程文件sjt5.vbp。程序功能如下: 1)单击“读数据”按钮,从文件中读出数据,放入二维数组a中。 2)单击“生成新数组”按钮时,依据a数组生成b数组;若a数组元素为素数,则直接将a数组元素的值赋给b数组中相同下标的数组元素;若a数

admin2017-03-26  20

问题 在考生文件夹下有一个工程文件sjt5.vbp。程序功能如下:
1)单击“读数据”按钮,从文件中读出数据,放入二维数组a中。
2)单击“生成新数组”按钮时,依据a数组生成b数组;若a数组元素为素数,则直接将a数组元素的值赋给b数组中相同下标的数组元素;若a数组元素的值能被2整除,则将该元素值的平方作为b数组同下标的元素;若a数组元素为其他值,则将该元素乘2的值作为b数组同下标的元素。
3)单击“查找最大值”按钮,则在b数组中找最大值并显示在Label2标签上。
在给出的窗体文件中已经有了全部控件,标准模块中有判断素数的函数IsPrime。要求去掉程序中的注释符,把程序中的?改为正确的内容,并编写相应的程序,实现程序的功能。
注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。程序调试通过后,各命令按钮的事件过程必须至少各执行一次。

选项

答案步骤1:打开考生文件夹中的工程文件sjt5.vbp,在代码编辑窗口中,去掉程序中的注释符“’”,将问号“?”改为正确的内容。在“由考生编写”处补充正确代码。 参考代码: Open App.Path&"\in5.txt"For Input As#1 Input#1,a(i,j) Private Sub Command2 Click() ’=====以下由考生编写========== Fox i=1To5 For j=1To5 If sushu(a(i,j))=True Then b(i,j)=a(i,j) ElSe If a(i,j)Mod2=0Then b(i,j)=a(i,j)*a(i,j) Else b(i,j)=a(i,j)*2 End If End If Next i,j ’=====考生编写程序结束========== End Sub Private Sub Command3_Click() ’=====以下由考生编写========= Dim k As Long k=0 For i=1To5 For j=1To5 f b(i,j)>k Then k=b(i,j) Next.i,j Label2.Caption=k ’=====考生编写程序结束========== Open App.Path&"\out5.txt"For Output As#1 Print#1,Label2.Caption Close#1 End Sub 步骤2:按<F5>运行程序,单击各按钮测试验证。 步骤3:按要求将文件保存至考生文件夹中。

解析 题目要求从文件中读取数据放到数组a当中,给数组a赋值通过嵌套的For循环来实现。“生成新数组”按钮的事件处理过程,按照规则来得到数组b,需要通过嵌套循环实现数组元素逐个赋值。同样,在查找最大值的时候通过嵌套的循环逐个搜索数组b的各个元素,就可以得到最大值。
转载请注明原文地址:https://jikaoti.com/ti/dqy0FFFM
0

最新回复(0)