首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下应用说明、属性设置以及Visual Basic程序代码,将解答写在对应栏内。 【应用说明】 本应用运行时,由用户输入一个正整数n后自动产生n个正整数,然后按照用户的指定要求对该组数进行处理。该应用的运行界面如下图所示:
阅读以下应用说明、属性设置以及Visual Basic程序代码,将解答写在对应栏内。 【应用说明】 本应用运行时,由用户输入一个正整数n后自动产生n个正整数,然后按照用户的指定要求对该组数进行处理。该应用的运行界面如下图所示:
admin
2009-09-20
20
问题
阅读以下应用说明、属性设置以及Visual Basic程序代码,将解答写在对应栏内。
【应用说明】
本应用运行时,由用户输入一个正整数n后自动产生n个正整数,然后按照用户的指定要求对该组数进行处理。该应用的运行界面如下图所示:
1.窗体中有两个文本框。(txtSrc,txtObj)、两个标签(lblSrc,lblObj)、三个命令按钮(cmdGendat,cmdProc,cmdQuit)和一个弹出式菜单(procMenu,初始时不可见)。
2.文本框txtSrc(由标签lblSrc提示)用于显示产生的数据,文本框txtObj(由标签lblObj提示)用于显示处理结果,要求每行显示一个整数。
3.程序启动时,命令按钮cmdProc(运算要求)不可用。单击命令按钮cmdGendat(产生数据)后,提示用户输入一个n的值并生成n个正整数存入数组元素a(1)~a(n),然后将数据逐行显示在txtSrc中,并设置命令按钮cmdProc可用。
4.单击命令按钮cmdProc(运算要求)后弹出菜单。选择菜单项并单击后,进行相应处理并将结果显示在txtObj中,同时将lblObj的标题改为该菜单项表示的处理命令。
弹出式菜单“运算要求”的结构如下表所示:
一个整数序列的中位数是指对该序列进行非递减(增)排列后最中间位置上的元素。若序列长度为偶数,则取中间两个元素的平均值为其中位数。
【属性设置】
为实现单击命令按钮cmdProc后弹出“运算要求”菜单(procMenu),设计时需将 procMenu的(1)属性设置成false。
供(1)选择的属性:Default Enabled ScaleMode Style Visible
【Visual Basic程序代码】
Dim a() AS Integer, n As Integer
Private Sub Form_Load()
txtSrc.Text = "": txtObj.Text = "": (2) = False
End Sub
Private Sub cmdGendat_Click () ’生成正整数序列并存入数组a
On Error GoTo Error handler
n = InputBox$ ("请输入数组元素个数:", "输入序列长度")
If (n < 1) Then
MsgBox "输入数据错误!", vbOKOnly, "提示:"
GoTo Error handler:
End If
ReDim a(n) As Integer
s = ""
For i = 1 To n ’将生成的正整数存入a(1)~a(n)中
a(i) = Int(Rnd * 10000) : s = s & Str$(a(i)) & vbCrLf
Next
txtSrc.Text = s
(3) ’设置运算要求命令按钮可用
Error handler:
End Sub
Private Sub cmdProc_Click()
PopupMenu procMenu
End Sub
Private Sub MidNum_Click() ’求中位数
lblObj.Caption = MidNum.Caption & ":"
For i = 1 To round((n + 1)/2> ’用选择排序法对数组a进行部分排序
a(0) = a(i):k = i ’a(0)用作临时变量,暂存第i次选出的最小元素
For j = i + 1 To n
If a(j) < a(0) Then
a(0)= a(j): k =(4)
End If
Next
If k <> i Then
a(k) = a(i): a(i) = a(0)
End If
Next
If n / 2 - n \ 2 > 0 Then ’n为奇数时,取中间一个数
txtObj.Text - Str$(a((5))
Else ’n为偶数时,取中间两个数的平均值
txtobj.Text = Str$(Int((a(n \ 2) + a(n \ 2 + 1)) / 2))
End If
End Sub
’其他代码略
选项
答案
(1)Visible (2) cmdProc.Enabled (3) cmdProc.Enabled=True (4) j (5) (n+1)/2,或n\2+1,或n/2+1,或其等价表示
解析
本题考查VB应用开发中菜单应用技术与基本的程序设计技术。
菜单的基本作用有两个:一是提供人机对话的界面,以便让使用者选择应用系统的各种功能;二是管理应用系统,控制各种功能模块的运行。
在实际应用中,菜单可分为两种:弹出式菜单和下拉式菜单。
Visual Basic中的菜单通过菜单编辑器,即菜单设计窗口建立,可以通过以下4种方式进入菜单编辑器。
(1)执行“工具”菜单中的“菜单编辑器”命令。
(2)使用Ctrl+E组合键。
(3)单击工具栏中的“菜单编辑器”按钮。
(4)在要建立菜单的窗体上单击鼠标右键,从弹出的快捷菜单中选择“菜单编辑器”命令。
菜单编辑器窗口分为数据区、编辑区和菜单显示区三个部分,如下图所示。
数据区用来输入或修改菜单项、设置属性。该区分为若干栏,包括标题、名称、索引、快捷键、帮助上下文、协调位置、复选、有效、可见和显示窗口列表。
编辑区有左、右箭头,上、下箭头,下一个,插入和删除7个按钮,用来对输入的菜单项进行简单的编辑。菜单在数据输入区输入,在菜单项显示区显示。
菜单项显示区位于菜单设计窗口的下部,输入的菜单项在这里显示出来,并通过内缩符号(…)表明菜单项的层次。条形光标所在的菜单项是“当前菜单项”。
为使菜单项在运行时起作用,还需要在该窗体的代码窗口内,为有关的菜单项对象的单击事件编写程序代码。
弹出式菜单平常在窗体中并不可见,当用鼠标右击窗体(或其中某个控件)时,就会在鼠标所指位置处弹出该菜单。弹出式菜单也称为上下文相关菜单(菜单的内容常与运行时实际的状态有关)。
弹出式菜单和下拉式菜单的不同之处是:应在各弹出式菜单项的上级设置一个顶层菜单项,而且在菜单编辑器中应取消该菜单项的“可见”属性,使其不可见,因此空(1)处应填入“Visible”。
程序启动时,要求命令按钮cmdProc(运算要求)不可用,因此应在Form Load事件中设置cmdProc.Enabled为False,空(2)处应填入“cmdProc.Enabled”。当命令按钮 cmdGendat的Click事件发生并产生数据后,应设置cmdProc可用,因此空(3)处应填入“cmdProc.Enabled=True”。
n个记录进行简单选择排序的基本方法是:通过n-i次关键字之间的比较,从n-i+1个记录中选出关键字最小的记录,并与第i(1≤i≤n)个记录进行交换,当i等于n时所有记录有序排列。本题中,由于只需找出中位数,因此不需要将全部元素排序。以下代码实现部分元素的选择排序,其中a(0)和k分别用于记录本趟选择过程中最小元素和其下标。
For i = 1 To round((n + 1)/2)
a(0) = a(i):k = i ’a(0)用作临时变量,暂存第i次选出的最小元素
For j = i + 1 To n
If a(j) < a(0) Then
a(0) = a(j): k =(4)
End If
Next
If k <> i Then
a(k) = a(i): a(i) = a(0)
End If
Next
显然,一旦发生a(j)<a(0),则更新a(0)和k的值,因此空(4)处应填入j。
若数列a(1)~a(n)中的元素个数n为偶数,则中间的两个元素为a(n/2)和a(n/2+1);若元素个数n为奇数,则最中间的元素为a((n+1)/2),因此空(5)处应填入(n+1)/2或n\ 2+1或n/2+1。
转载请注明原文地址:https://jikaoti.com/ti/IkW7FFFM
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
某社区有12个积极分子A~L,他们之间的联系渠道见下图。居委会至少需要通知他们之中(67)________________个人,才能通过联系渠道通知到所有积极分子。
计算机硬件唯一能够直接识别和处理的语言是(30)________________。
以下文件类型中,(19)________________表示视频文件。
在信息收集过程中,需要根据项目的目标把握数据(7)________________要求,既不要纳入过多无关的数据,也不要短缺主要的数据;既不要过于简化,也不要过于烦琐。
下列关于索引的叙述中,正确的是________________。
在Excel2010中,C3:C7单元格中的值分别为10、OK、20、YES和48,在。D7单元格中输入函数“=COUNT(C3:C7)”,按回车键后,D7单元格中显示的值为________________。
在Excel2010中,A1和B1单元格中的值分别为“12”和“34”,在C1中输入公式“=A1&)。??B1”,按回车键后,则C1中的值为(
企业建立生产和库存管理系统的目的不包括()。
在统计学中,用来衡量一个样本中各个数据波动大小的量是______。
阅读下列说明和HTML文本,分析其中嵌入的JavaScript脚本,将应填入(n)处的语句填到对应栏内。[说明]在文本框中实现时钟显示功能,格式如下:“-年-月-日小时:分:秒星期几”[HTML文本]<html>
随机试题
考察和评估学校环境应集中在哪些方面?
如果肠系膜上动脉起始部发生血栓栓塞,造成血运障碍的所有肠段为
对职业伤害事故,按照其后果的严重程度分类,重大事故是指一次死亡()人及其以上的事故。
下列不属于建设投资中静态投资的是()。
通常所说的股市行情,即股票价格是指()。
下列各句中,没有语病的一句是()。
导游服务集体中的上线工作人员包括()。
供应链管理的萌芽阶段大致是从20世纪60~70年代,此时的供应链管理更确切地说还只能称之为业务链,而且链上的每个成员的管理理念基本上都是“为了销售而管理”。()
下列选项中,哪一项属于从服务对象层面体现的社会工作目标?()
下列关于C语言数据文件的叙述中正确的是()。
最新回复
(
0
)