在考生文件夹下有一个工程文件sj5.vbp,功能是用来计算勾股定理整数组合的个数。勾股定理中3个数的关系是:a2+b2=c2.例如,3、4、5就是一个满足条件的整数组合(注意:a,b,c分别为4,3,5与分别为3,4,5被视为同一个组合,不应该重复计算)。编写程序,统计均在60以内的3个数满足上述关系的整数组合的个数,并显示在标签Label1中。
注意:不得修改原有程序的控件的属性。在结束程序运行之前,必须至少正确运行一次程序,将统计的结果显示在标签中,否则无成绩。最后把修改后的文件按原文件名存盘。
第1题:
在考生文件夹下有一个工程文件execise30.vbp,窗体文件execise30.frm中的ReadData1和ReadData2过程可以把in1.txt和in2.txt文件中的整数分别读入Arr1和Arr2数组中;而 WriteData过程可以把计算出的整数值写到考生文件夹指定的文件中(整数值通过计算求得,文件名为out.txt),可直接调用。
请先装入工程文件execise30.vbp,然后完成以下操作:在名为Form1的窗体上绘制3个命令按钮,其名称分别为Cmd1、Cmd2和Cmd3,标题分别为Read、Calc和Save,如下图所示。程序运行后,如果单击Read按钮,则调用题目所提供的ReadDate1和ReadDate2过程读入in301.txt和in302.txt文件中的各20个整数,分别放入Arr1和Arr2两个数组中:如果单击Cac1按钮,则把两个数组中对应下标的元素相减,其结果放入第3个数组中(即:第一个数组的第n个元素减去第二个数组的第n个元素,其结果作为第3个数组的第n个元素。这里的n为1,2,…,20),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来;如果单击“Save”按钮,则把所求得的和存入考生文件夹的out30.txt文件中。运行窗体如图所示。
注意:
考生不得修改窗体文件中已经存在的程序,必须把求得的结果用“Save”按钮存入考生文件夹下的out30.txt文件中,否则没有成绩。存盘时,工程文件名仍为execise30.vbp,窗体文件名仍为execise30.frm。
第2题:
在窗体Form1上绘制3个命令按钮,其名称分别为Cmd1、Cmd2和Cmd3,标题分别为“读数”、“计算”和“存盘”,如下图所示。
程序运行后,如果单击“读数”按钮,则调用题目所提供的ReadDate1和ReadDate2过程读入in141.txt和in142.txt文件中的各20个整数,分别放入Arr1和Art2两个数组中;如果单击“计算”按钮,则把两个数组中对应下标的元素相减,其结果放入第3个数组中 (即:第一个数组的第n个元素减去第二个数组的第n元素,其结果作为第3个数组的第 n个元素。这里的n为1,2,…,20),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来;如果单击“存盘”按钮,则把所求得的和存入考生文件夹的out14.txt文件中。
在考生文件夹下有一个工程文件execise14.vbp,考生可以装入该文件。窗体文件 execise14.frm中的ReadData1和ReadData2过程可以把in141.txt和in142.txt文件中的整数分别读入Arr1和Art2数组中;而WriteData过程可以把计算出的整数值写到考生文件夹指定的文件中(按数值通过计算求得,文件名为out14.txt),考生可以直接调用。
注意:
考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名仍为execise14.vbp,窗体文件名仍为execise14.frm。
第3题:
在窗体Form1上绘制3个命令按钮,其名称分别为Cmd1、Cmd2和Cmd3,标题分别为“读数”、“计算”和“保存”,如下图所示。
程序运行后,如果单击“读数”按钮,则利用题目中提供的Readdate1、ReadDate2过程读入in251.txt和in252.txt文件中的各20个整数,分别放入两个数组Arr1和Art2中;如果单击“计算”按钮,则把两个数组中对应下标的元素相加,其结果放入第3个数组中(即:第一个数组的第n个元素与第二个数组的第n个元素相加,其结果作为第3个数组的第n个元素。这里的n为1,2,…,20),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来:如果单击“保存”按钮,则调用题目中给出的WriteDate过程将计算结果存入考生文件夹的out25.txt文件中。在考生文件夹下有一个工程文件execise25.vbp,考生必须装入该文件。
注意:
考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名仍为execise25.vbp,窗体文件名仍为execise25.frm。
第4题:
在考生文件夹下有一个工程文件sjt4.vbp。请在窗体上添加一个组合框,名称为cbl,并输入三个列表项:“3”、“7”、“11”(列表项的顺序不限,但必须是这三个数字);添加一个名为Textl的文本框;再添加一个标题为“计算”、名称为cl的命令按钮,如图所示。请编写适当的事件过程,使得在程序运行时,在组合框中选定一个数字后,单击“计算”按钮,则计算5000以内能够被该数整除的所有数之和,并放入Textl中。最后,按原文件名存盘。
提示:由于计算结果较大,应使用长整型变量。
注意:考生不得修改窗体文件中已经存在的程序,在结束程序运行之前,必须至少进行一次计算。并且必须用窗体右上角的关闭按钮结束程序,否则无成绩。
【考点分析】本题考点有:文本框的Name属性、组合框的Name和I.ist属性、命令按钮的Name和Caption属性、Val()函数以及Mod取模运算。
【解题思路】本题主要考查组合框的属性及For循环语句的使用。
Mod取模运算就是求余数,例如10mod3=1,因为10除以3等于3余1,结果就是余数。如果amodb=0,则说明a能被b整除,反之如果amodb<>0,则a不能被b整除。
组合框(ComboBox)将文本框与列表框的特性组合在一起,既可以在组合框的文本框部分输入信息,也可在列表框部分选择项目;组合框的列表项可在设计阶段通过其List属性添加,每输入完一项后按<Ctrl+Enter>键换行再输入下一项;其Text属性用于设置或返回其文本框部分当前的文本。
根据题意,用For逐一循环5000内的整数,通过If语句的条件表达式:iModn=0,判断各个数是否能被n整除,把能被整除的数累加到变量sum。i为循环变量,n的值为Val(Cbl.Text)。
【操作步骤】
步骤1:打开本题工程文件,按照题目要求建立控件并设置组合框控件属性,如图3.19所示。程序中用到的控件及属性见表3.11。
步骤2:打开代码编辑窗口,在代码编辑窗口指定位置编写以下代码。
参考答案
Private Sub C1_Click()
Dim sum As Long
Dim n As Integer
Dim i As Integer
n=Val(cbl.Text)’读取选中的数字并通过函数
Vai转换为数值
For i=n T0 5000′从本身开始循环查找
If i Mod n=0 Then
sum=Sum+i′判断是否能被该数整除并求和
End If
Next i
Text1.Text=sum.在Text1中显示
End Sub
步骤3:调试并运行程序,关闭程序后按题目要求存盘。
第5题:
在窗体上绘制3个命令按钮,其名称分别为Cmd1、Cmd2和Cmd3,标题分别为“读数”、“计算”和“保存”,如下图所示。
程序运行后,如果单击“读数”按钮,则读入in271.txt和in272.txt文件中的各20个整数,分别放入两个数组中;如果单击“计算”按钮,则把两个数组中对应下标的元素除以10并截尾取整后相乘,其结果放入第3个数组中(即:把第一个数组的第n个元素除以 10截尾取整,再把第二个数组的第n元素除以10截尾取整,两者相乘后的结果作为第3个数组的第n个元素。这里的n为1,2,…,20),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来;如果单击“保存”按钮,则把所求得的和存入考生文件夹的out27.txt文件中。
在考生文件夹下有一个工程文件execise27.vbp,考生可以装入该文件。窗体文件 execise27.frm中的RcadData1和ReadData2过程可以把in1.txt和in2.txt文件中的各20个整数分别读入Arr1和Arr2数组中;而WriteData过程可以把计算出的整数值写到考生文件夹指定的文件中(整数值通过计算求得,文件名为out27.txt)。
注意:
考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名仍为exeeise27.vbp,窗体文件名仍为execise27.frm。