当前位置:文档之家› 实验5-数组答案

实验5-数组答案

VB程序设计实验五实验目的●掌握一维数组和二维数组的操作●学习跟数组相关的控件:列表框和组合框复习1.列表框列表框(ListBox)控件允许用户查看和选择列表中的多个元素。

表5-11 列表框的常用属性和事件2.组合列表框(ComboBox)整合了列表框和文本框的功能,以一个文本框控件(TextBox)右边加上一个向下箭头的样式显示。

有Simple(简单组合框)、DropDown(下拉组合框)和DropDownList(下拉列表框)。

其中,Simple选项不显示下拉箭头,而是在控件的旁边显示一个滚动条;DropDown风格(默认值)在单击向下箭头时显示一个下拉列表,且在ComboBox中输入一个值;DropDownList显示一个下拉列表,但不允许用户在ComboBox中输入。

表5-13 组合列表框的常用属性和事件(1) Items.Count属性:列表框或组合框中项目数量。

最后一项的序号为Items.Count-1,该属性只能在程序中设置或引用。

(2) Text属性:被选定的选项的文本内容。

该属性只能在程序中设置或引用。

注意:ListBox1.Items(ListBox1.SelectedIndex)等于ListBox1.Text。

(3) Items.Add方法把一个选项加入列表框,格式:对象.Items.Add(选项);如:ListBox1.Items.Add("周海涛")(4) Insert方法在指定位置插入一个项目。

格式:对象.Items.Insert(序号, 添加项内容)(5)Items.Remove方法从列表框中删除指定的项。

格式:对象. Items.Remove (选项)。

例如:ListBox1.Items.Remove ("华成")(6)Items.RemoveAt方法格式:对象.RemoveAt(Index)从列表框中删除指定的项。

Index表示被删除项目在列表框中的位置,从0开始。

例如:ListBox1.Items.RemoveAT(4)(7) Items.Clear方法格式:对象.Items.Clear用于清除列表框所有项目,例如:ListBox1.Items.Clear4.单选按钮、复选框和框架1)单选按钮(RadioButton)单选按钮以组的形式出现,允许选择其中一项。

•Text属性:按钮上显示的文本•TextAlign属性:文本对齐方式•Checked属性:表示单选按钮的状态,True ——被选定,False ——未被选定•Click事件:单击后,使Checked属性为True•CheckedChanged事件:当某个单选按钮的状态被发生变化,该事件随之被触发。

2)复选框(CheckBox)与RadioButton具有相同属性和事件,之外还有:•CheckState属性:表示复选框状态,Unchecked——未选定,Checked——被选定,Indeterminate——灰色3)框架(GroupBox分组框)•Text属性:标题文本•Enabled属性:框架和其中的控件•Visible属性:为False时,框架及其所有控件都被隐藏起来。

框架可以响应Click和DoubleClick事件,但一般不需要编写事件过程。

实验内容1.参照下图界面,程序运行时,可根据用户的需要,设置字体的前景色、背景色、字体大小等,文本框中的文字会发生相应改变。

其中,字体、字体大小、字体效果、字体背景色、字体前景色分别为框架。

设计时,先建立框架,再将各个控件分别放入框架内,当移动框架时,里面的控件同时移动。

保存项目为shiyan5-1。

创建项目:1)双击工具箱的“容器”选项卡下的GroupBox按钮,在窗体上建立5个框架控件,分别将其Text属性设置为“字体”、“字体大小”、“字体效果”、“字体背景色”和“字体前景色”。

2)单击RadioButton按钮,在“字体”和“字体大小”框架中画出单选按钮,并设置其Text属性。

3)单击ListBox按钮,在“字体效果”框架中画出列表框,单击Items属性旁的按钮,输入列表项的内容(如“加粗”、“斜体”等),并每项内容之间按Enter键。

4)单击CheckBox按钮,在“字体背景色”框架中画出复选框,并设置其Text 属性。

其中,“Red”复选框的Checked属性值为True。

5)单击ComboBox按钮,在“字体前景色”框架中画出下拉列表框,其属性值通过Form_Load事件过程设置。

提示:(1)在通用声明段中声明6个变量R、G、B、rr、s、f,R、G、B分别用于保存字体背景红、绿、蓝色的设置,rr用于保存颜色,s用于保存字体大小,f用于保存字体。

Dim R%, rr%, G%, B%, s%, f$ '声明R、G、B、rr、s、f为窗体模块级变量在Form_Load事件过程中设置颜色的初始值,并添加“字体前景色”下拉列表中的列表项。

R = 255 : G = 0 : B = 0s = 9 : f = "宋体"ComboBox1.Items.Add("Black")‘在组合框中添加项目,第1项下标为0开始ComboBox1.Items.Add("White")ComboBox1.Items.Add("Yellow")ComboBox1.Text = "Black"‘设置当前选项为"Black"(2)“字体”框架中单选按钮的事件过程代码(其他字体事件过程参照该事件过程)Private Sub RadioButton1_Click(……) Handles RadioButton1.Click '单击“宋体”单选按钮f = "宋体"TextBox1.Font = New Font(f, s)End Sub其中,Font为字体类,设置字体使用New Font(字体名称字符串, 字号,字体效果)(3)在中,每一种颜色用一个整型数据来表示,可使用Color颜色结构中的FromArgb(x,y,z)函数来实现,或用颜色函数RGB(x,y,z),通过ColorTranslator类转换实现。

“字体背景色”框架中复选框的事件过程Private Sub CheckBox5_CheckedChanged( ……) Handles CheckBox5.CheckedChanged'单击“Red”复选框If CheckBox5.Checked = True Then‘要判断各个复选框的选定状态,颜色由R、G、B组成R = 255ElseR = 0End Ifrr = RGB(R, G, B)Textbox1.BackColor = System.Drawing.ColorTranslator.FromOle(rr)End Sub“字体前景色”框架中下拉列表框的事件过程如下:Private Sub ComboBox1_SelectedIndexChanged(…) Handles ComboBox1.SelectedIndexChanged '选择“字体前景色”下拉列表Select Case ComboBox1.TextCase "Black"Textbox1.ForeColor = Color.BlackCase "White"Textbox1.ForeColor = Color.WhiteCase "Yellow"Textbox1.ForeColor = Color.YellowEnd SelectEnd Sub“字体效果”框架中列表框的事件过程(SelectedIndexChanged事件过程)If ListBox1.SelectedIndex=0 ThenTextBox1.Font = New System.Drawing.Font(TextBox1.Font, FontStyle.Bold)End If也可以用Select Case 语句2.编写程序输出一个9行的“杨辉三角形”,如图4- 1错误!未找到引用源。

所示。

保存项目为shiyan5-2.图4- 1杨辉三角形提示:①杨辉三角形的形式:对角线和每行的第一列均为1,其余各项是它的上一行中同一列元素和其前面一个元素之和。

如下数据是一个5行的杨辉三角。

1 0 0 0 01 1 0 0 01 2 1 0 01 3 3 1 01 4 6 4 1a(i, j)=a(i-1, j)+a(i-1, j-1)②用Space函数确定数据之间的空格:Label1.Text = Label1.Text & a(i, j) & IIf(a(i, j) < 10, Space(3), Space(2))PrivateSub Button1_Click(sender As System.Object, e As System.EventArgs) HandlesButton1.ClickDim i, j, n, a(8, 8)n = 8For i = 0 To nFor j = 0 To iIf i = j Or j = 0 Thena(i, j) = 1ElseIf i<> 0 And j <> 0 Thena(i, j) = a(i - 1, j) + a(i - 1, j - 1)EndIfNextNextFor i = 0 To nLabel1.Text &= Space((n - i) * 2 + 2)For j = 0 To iLabel1.Text = Label1.Text &a(i, j) &IIf(a(i, j) < 10, Space(3), Space(2))NextLabel1.Text = Label1.Text &vbNewLineNextEndSub3.将数组下标为偶数的元素从小到大排序,其他元素不变。

保存项目为shiyan5-3 Private Sub Button1_Click( ……) Handles Button1.ClickDim a() As Integer = {90, 49, 23, 45, 11, 45, 67, 23, 68, 56}Dim i, j, n, temp As Integern = UBound(a)For i = 0 To nLabel1.Text = Label1.Text &a(i) &vbCrLfNext iFor i =__0__(1)____To (n \2 -1) * 2 ____(2)____step 2For j = _i+2___(3)____To __(n \2 )* 2__(4)____Step 2If ____(5)_a(i)>a(j)_____ Thentemp = a(i): a(i) = a(j): a(j) = tempEnd IfNext jNext iFor i = 0 To nLabel2.Text = Label2.Text &a(i) &vbCrLfNext iEnd Sub4.下面程序对产生的10个随机数进行排序,程序中有4个错误,请在相应的行上改正。

相关主题