在考生文件夹下有一个工程文件sjt5.Vbp,其窗体上画有两个名称分别为Text1、Text2的文本框,其中Text1可多行显示。请画两个名称为Command1、Command2,标题为“产生数组”、“查找”的命令按钮。如图8所示。程序功能如下: ①单击

admin2020-06-30  37

问题 在考生文件夹下有一个工程文件sjt5.Vbp,其窗体上画有两个名称分别为Text1、Text2的文本框,其中Text1可多行显示。请画两个名称为Command1、Command2,标题为“产生数组”、“查找”的命令按钮。如图8所示。程序功能如下:

①单击“产生数组”按钮,则用随机函数生成10个0~100之间(不含0和100)互不相同的数值,并将它们保存到一维数组a中,同时也将这10个数值显示在Text1文本框内;
②单击“查找”按钮将弹出输入对话框,接收用户输入的任意一个数,并在一维数组a中查找该数,若查找失败,则在Text2文本框内显示该数“不存在于数组中”;否则显示该数在数组中的位置。
要求:请去掉程序中的注释符,把程序中的?改为正确的内容,使其实现上述功能,但不能修改窗体文件中已经存在的控件和程序。最后把修改后的文件按原文件名存盘。

选项

答案[操作步骤] 步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,在窗体上画两个命令按钮,属性及其值如表12—6所示。 [*] 步骤2:在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。 参考代码: a(i)=Fix(Rnd*99+1) For j=1 To i—-1 i=i-1 If a(i)=num Then If i>10Then。

解析 Rnd()函数用于产生一个小于1但大于或等于0的随机数值,为了生成某个范围内的随机整数,可使用以下公式:Int((upperbound-lowerbound+1)*Rnd+lowerbound)。upperbound是随机数范围的上限,而lowerbound则是随机数范围的下限。
本题在“生成数组”按钮的单击事件过程中,通过For循环生成10个0~100之间(不含0和100)互不相同的随机数,并存入数组a,其中生成函数的表达式应为:Fix(Rnd*99+1)。为防止生成相同的随机数值,每新生成一个随机数后,都通过For循环让其与之前生成的i-一个随机数逐一比较,若新生成的随机数已存在,则将当前循环变量i的值减1,重新为数组元素a(i)生成随机数。
在“查找”按钮的单击事件过程中,通过For循环让数组a中的元素逐一与用户在输入对话框中输入的数相比较,若条件表达式a(i)=num成立,则表示找到相同的数,并在文本框Text2中显示相关信息。若没找到相同的数,循环结束后循环变量i>10,则在Text2文本框内显示该数“不存在于数组中”。
转载请注明原文地址:https://kaotiyun.com/show/1HHp777K
0

最新回复(0)