为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

数组

2011-03-08 50页 ppt 1MB 19阅读

用户头像

is_026448

暂无简介

举报
数组null第7章 数组 第7章 数组 7.1 数组的概念 7.2 静态数组 7.3 动态数组 7.4 控件数组 7.5 For Each...Next语句 习题七 7.1 数 组 的 概 念 7.1 数 组 的 概 念 7.1.1 数组与数组元素 数组是一组用一个统一的名称表示的、顺序排列的变量。数组中的变量称为数组元素,用数字(下标)来标识它们,因此数组元素又称为下标变量。 可以用数组名及下标惟一地识别一个数组的元素,比如x(2)表示名称为...
数组
null第7章 数组 第7章 数组 7.1 数组的概念 7.2 静态数组 7.3 动态数组 7.4 控件数组 7.5 For Each...Next语句 习七 7.1 数 组 的 概 念 7.1 数 组 的 概 念 7.1.1 数组与数组元素 数组是一组用一个统一的名称示的、顺序排列的变量。数组中的变量称为数组元素,用数字(下标)来标识它们,因此数组元素又称为下标变量。 可以用数组名及下标惟一地识别一个数组的元素,比如x(2)表示名称为x的数组中顺序号(下标)为2的那个数组元素(变量)。 null 7.1.2 数组的类型 VB中的数据有多种类型,相应的数组也有多种类型。可以声明任何基本数据类型的数组,包括用户自定义类型和对象变量,但是一个数组中的所有元素应该具有相同的数据类型。 null 7.1.3 数组的维数 如果一个数组的元素只有一个下标,则称这个数组为一维数组。例如,数组a有10个元素:a(1)、a(2)、a(3)……a(10),依次保存10个学生的一门功课的成绩,则a为一维数组。一维数组中的各个元素又称为单下标变量。一维数组中的下标又称为索引(Index)。 如果有10个学生,每个学生有5门功课的成绩,如表7-1所示。 null表7-1 学生成绩表 null 7.1.4 数组的形式 在VB中有两种形式的数组:静态数组和动态数组。静态数组是指数组元素的个数固定不变,而动态数组的大小(其元素的个数)在运行时可以改变。 7.2 静 态 数 组7.2 静 态 数 组7.2.1 数组的声明 声明数组的格式为 Dim 数组名(〈维数定义〉) [ As 〈类型〉] null 7.2.2 数组的使用 在建立(声明)一个数组之后,就可以使用数组。使用数组就是对数组元素进行各种操作,如赋值、表达式运算、输入或输出等。 对数组元素的操作与对简单变量的操作基本一样,但在引用数组元素的时候要注意以下几点: null ① 数组声明语句不仅定义数组、为数组分配存储控件,而且还能对数组进行初始化,使得数值型数组的元素值初始化为0,字符型数组的元素值初始化为空等等。 ② 引用数组元素的方法是在数组名后的括号中指定下标 t = a(2) : s = b(3,4) 其中,a(2)表示数组a中索引值为2的元素,b(3,4)表示二维数组b中行下标为3,列下标为4的元素。 null③ 数组名、数组类型和维数必须与数组声明时一致。 ④ 下标值应在数组声明时所指定的范围之内。 ⑤ 在同一过程中,数组与简单变量不能同名。 null 7.2.3 静态数组的应用 【例7-1】 计算某组10个同学的总分、平均分。 设计步骤如下: (1) 从“文件”菜单中选择“新建”,在打开的“新建工程”对话框中双击“EXE”,新建一个标准工程。 (2) 建立应用程序用户界面。在窗体设计器中加入两个标签Label1、Label2和一个命令按钮Command1,调整它们的位置及大小,如图7.1所示。 (3) 设置对象属性,参见图7.3所示。null图7.1 建立用户界面null图7.2 在“代码窗口”中输入 null (4) 编写事件过程代码。考虑到要在不同的过程中使用数组,所以首先在模块的通用段声明数组。从“视图”菜单中选择“代码窗口”,在“代码窗口”中的对象下拉列表框中选“(通用)”,在事件程序下拉列表框中选“(声明)”,输入下列代码,如图7.2所示。 nullOption Base 1 Dim a(1 To 10) As Single “统计”按钮Command1的Click事件代码为 Private Sub Command1_Click() Dim i As Integer, total As Single, average As Single For i = 1 To 10 a(i) = Val(InputBox("请输入第" & Str(i) & "个学生的成绩", "输入成绩")) nulltotal = total + a(i) Next i average = total / 10 Label1.Caption = Label1.Caption + Format(total) Label2.Caption = Label2.Caption + Format(average) End Sub 运行程序,单击“统计”按钮,依次输入10个学生的成绩,如图7.3左所示,计算结果如图7.3右所示。 null图7.3 依次输入学生成绩和统计结果 null 【例7-2】 输入一串字符,统计各字母出现的次数,不区分大小写。 设计步骤如下: (1) 建立用户界面并设置对象属性,如图7.4左所示。 null图7.4 建立用户界面和程序运行结果 null (2) 编写事件代码。“统计字母”命令按钮Command1的Click事件代码为 Private Sub Command1_Click() Dim a(1 To 26) As Integer Dim i As Integer, j As Integer, c As String * 1 tot = Len(Text1) ' 求字符串的长度 For i = 1 To tot c = UCase(Mid(Text1, i, 1)) ' 取一个字符,将其转换成相应的大写字母 nullIf c >= "A" And c <= "Z" Then j = Asc(c) - 65 + 1 ' 将A~Z大写字母转换成1~26的下标 a(j) = a(j) + 1 ' 对应数组元素加1 End If Next i For j = 1 To 26 ' 输出字母及其出现的次数 nullIf a(j) > 0 Then Label2.Caption = Label2.Caption & Chr$(j + 64) & "=" & a(j) & " " End If Next j End Sub 程序运行结果如图7.4右所示。 null 【例7-3】 随机产生10个数,用“选择排序法”按递增顺序排序。 设计步骤如下: (1) 建立用户界面并设置对象属性,如图7.6所示。 (2) 编写事件代码。“排序”命令按钮Command1的Click事件代码为 Private Sub Command1_Click() Dim a(1 To 10) As Single Randomize null图7.5 选择排序法示意图nullFor i = 1 To 10 ' 产生10个随机数 a(i) = Int(Rnd * 90 + 10) Label1.Caption = Label1.Caption & a(i) & " " Next i For i = 1 To 9 ' 进行排序 For j = i + 1 To 10 If a(j) < a(i) Then t = a(i) ' 交换数据 a(i) = a(j) a(j) = t nullEnd If Next j Next i For i = 1 To 10 ' 输出排序后的结果 Label2.Caption = Label2.Caption & a(i) & " " Next i Command1.Enabled = False End Sub 程序运行结果如图7.6右所示。null图7.6 用户界面和排序结果null 【例7-4】 将文本框的数据存入数组中,编写程序,能输入个人情况并可根据姓名进行查询。 设计步骤如下: (1) 建立应用程序用户界面并设置对象属性,如图7.7所示。 (2) 编写事件代码。在通用段声明数组: null图7.7 建立用户界面和设置对象属性nullDim a(10, 6) As Variant ' 定义变体数组,其数组元素可以是Integer、Long等类型 Dim num As Integer “输入”命令按钮Command1的Click事件代码为 Private Sub Command1_Click() Static i As Integer ' 用Static声明,只重设0一次,其值可保留到下次过程调用 Text1.SetFocus ' 使程序开始时,光标(焦点)位于输入框Text1中 i = i + 1nullForm1.Caption = "请输入第" & Str(i + 1) & "位同志的情况" a(i, 1) = Text1.Text ' 数据输入 a(i, 2) = Text2.Text a(i, 3) = Text3.Text a(i, 4) = Text4.Text a(i, 5) = Text5.Text a(i, 6) = Text6.Text nullnum = i Text1.Text = "" ' 清空各文本框内容,为下次输入或查询做准备 Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" End Sub “查询”命令按钮Command2的Click事件代码为 nullPrivate Sub Command2_Click() Static i As Integer For i = 1 To num If a(i, 1) = Text1.Text Then ' 确定输入姓名存在 Text2.Text = a(i, 2) ' 调出相应数据 Text3.Text = a(i, 3) Text4.Text = a(i, 4) Text5.Text = a(i, 5) Text6.Text = a(i, 6) Exit Sub ' 跳出本过程 nullEnd If Next i MsgBox "查无此人!", vbOKOnly, "抱歉" ' 姓名不相符时,输出消息框 End Sub “结束”命令按钮Command3的Click事件代码为 Private Sub Command3_Click() Unload Me End Sub 程序运行结果如图7.8所示。 null图7.8 输入和查询个人情况 null 【例7-5】 矩阵的加法运算。两个相同阶数的矩阵A和B相加,是将相应位置上的元素相加后放到同阶矩阵C的相应位置。 设计步骤如下: (1) 设计程序界面和设置对象属性。选择“新建”工程,进入窗体设计器,在窗体中增加3个图片框Picture1~Picture3,两个标签Label1、Label2和两个命令按钮Command1、Command2。设置对象属性如图7.9所示。 null图7.9 设计窗体界面与运行程序 null(2) 编写代码。在“通用”段声明数组: Dim a(5, 3) As Integer, b(5, 3) As Integer “重置”按钮Command1的Click事件代码为 Private Sub Command1_Click() For n = 1 To 5 ' 控制矩阵行数 For m = 1 To 3 ' 控制矩阵列数 x = Int(Rnd * 100): a(n, m) = Val(x) ' 产生随机数 x = Int(Rnd * 100): b(n, m) = Val(x) ' 产生随机数 nullNext Next Picture1.Cls: Picture2.Cls: Picture3.Cls ' 清空图片框 Picture1.CurrentY = 80: Picture2.CurrentY = 80 ' 控制输出位置 For n = 1 To 5 nullFor m = 1 To 3 Picture1.Print Format(a(n, m), “@@@@”); ‘ 输出产生的随机数 Picture2.Print Format(b(n, m), "@@@@"); ' 输出产生的随机数 Next Picture1.Print: Picture2.Print ' 换行 Next End Subnull“计算”按钮Command2的Click事件代码为 Private Sub Command2_Click() Dim c(5, 3) As Integer For i = 1 To 5 For j = 1 To 3 c(i, j) = a(i, j) + b(i, j) ' 求两矩阵相加的各项值 Next Next Picture3.Cls ' 清空 Picture3.CurrentY = 80 ' 确定输出位置null For n = 1 To 5 For m = 1 To 3 Picture3.Print Format(c(n, m), "@@@@"); ' 输出结果数据 Next Picture3.Print ' 换行 Next End Sub 运行程序,单击“重置”按钮产生原始数据,单击“计算”按钮得到相加结果。如果再次单击“重置”按钮,则重新产生数据,如图7.10所示。null图7.10 两矩阵相加运行结果 7.3 动 态 数 组 7.3 动 态 数 组 7.3.1 创建动态数组的方法 创建动态数组的步骤如下: ① 声明一个未指明大小及维数的数组。格式为 Public | Private | Dim | Static 数组名() As 类型 ② 用ReDim语句分配实际的元素个数。格式为 ReDim [ Preserve ] 数组名(〈维数定义〉) [ As〈类型〉] null 7.3.2 保留动态数组的内容 有时希望改变数组大小而又不丢失数组中的数据,这时可以使用具有Preserve关键字的ReDim语句。例如: ReDim a(2,4) ReDim Preserve a(2,6) null 【例7-6】 用动态数组修改例7-4,从而能输入个人情况并可根据姓名进行查询。 建立应用程序用户界面并设置对象属性,如例7-4所示。接着修改事件编码。 在通用段声明数组: Dim a( ) As Variant ' 声明一个未指定维数及大小的数组 Dim num As Integer 修改“输入”命令按钮Command1的Click事件代码为 nullPrivate Sub Command1_Click() Static i As Integer Text1.SetFocus ' 使程序开始时,光标(焦点)位于输入框Text1中 i = i + 1 ReDim Preserve a(7, i) ' 声明动态数组,保留原先数据 Form1.Caption = "请输入第" & Str(i + 1) & "位同志的情况" nulla(1, i) = Text1.Text a(2, i) = Text2.Text a(3, i) = Text3.Text a(4, i) = Text4.Text a(5, i) = Text5.Text a(6, i) = Text6.Text num = i Text1.Text = "" Text2.Text = "" Text3.Text = "" nullText4.Text = "" Text5.Text = "" Text6.Text = "" End Sub “查询”命令按钮Command2的Click事件代码为 Private Sub Command2_Click() Static i As Integer For i = 1 To num If a(1, i) = Text1.Text Then nullText2.Text = a(2, i) Text3.Text = a(3, i) Text4.Text = a(4, i) Text5.Text = a(5, i) Text6.Text = a(6, i) Exit Sub ' 跳出本过程 End If Next i MsgBox "查无此人!", vbOKOnly, "抱歉" End Sub null“结束”命令按钮Command3的Click事件代码为 Private Sub Command3_Click() Unload Me 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 图7.11 杨辉三角形 End Sub 程序运行结果同例7-4。null 【例7-7】 编写程序,输出杨辉三角形,如图7.11所示。 设计步骤如下: (1) 建立应用程序用户界面并设置对象属性,参见图7.12所示。 (2) 编写代码。 在模块的通用段声明一个动态数组: Dim a( ) 为了能输入行数并按回车键后可以得到各项,编写文本框Text1的按键(KeyPress)事件代码为null图7.11 杨辉三角形 nullPrivate Sub Text1_KeyPress(KeyAscii As Integer) Dim n As Integer If KeyAscii = 13 Then ' 按回车键时执行 n = Val(Text1.Text) ' 在文本框中输入的行数 If n > 10 Then ' 设定不超过10行 MsgBox "请不要超过10" ' 消息框 Exit Sub ' 退出过程 End If nullReDim a(n, n) ' 分配动态数组实际的元素个数 For i = 1 To n a(i, 1) = 1: a(i, i) = 1 ' 使得每行两边的元素值为1 Next Print Tab(20); Format(1, "!@@@") & Chr(13) Print Tab(18); Format(1, "!@@@") & Space(2) & Format(1, "!@@@") & Chr(13) For i = 3 To n Print Tab(20 - i * 2); Format(a(i, 1), "!@@@@") & Space(2);null For j = 2 To i - 1 a(i, j) = a(i - 1, j - 1) + a(i - 1, j) Print Format(a(i, j), "!@@@@@"); Next Print Space(2) & Format(a(i, i), "!@@@@") & Chr(13) Next End If End Sub null图7.12 杨辉三角形 7.4 控 件 数 组7.4 控 件 数 组 7.4.1 控件数组的概念 如果在应用程序中用到一些类型相同且功能类似的控件,则可将这些相同的控件视为一个数组——“控件数组”。控件数组的使用类似数组变量的使用,也具有如下特点: (1) 相同的名称(Name)。 (2) 以下标索引值(Index)来识别各个控件。 null7.4.2 控件数组的建立 建立控件数组的方法有3种: (1) 给控件起相同的名字。 (2) 将现有的控件复制并粘贴到窗体或框架、图片框上。 (3) 将控件的Index属性设置为非Null数值。 null 1. 给控件起相同的名称 通过改变已有控件的名称,可以将一组控件组成控件数组,具体步骤如下: (1) 画出控件数组中要添加的控件(必须为同一类型的控件),并且决定哪一个控件作为数组中的第一个元素。 (2) 选定控件并将其Name属性设置成数组名称。 (3) 在为数组中的其他控件输入相同名称时,VB将显示一个对话框,要求确认是否要创建控件数组。此时选择“是”,确认操作。null图7.13 确认创建控件数组null 2. 复制现存控件 利用复制、粘贴的功能建立控件数组,如同文本编辑一样方便。具体步骤如下: (1) 画出控件数组中的第一个控件。 (2) 当控件获得焦点时,单击“复制”按钮,或按Ctrl+C组合键。 (3) 单击“粘贴”按钮,或按Ctrl+V组合键。 (4) 继续单击“粘贴”按钮(或按Ctrl+V组合键),可得到控件数组中的其他控件。 null图7.14 新数组元素的索引值与其添加到控件数组中的次序一样 null 3. 指定控件的索引值 直接指定控件数组中第一个控件的索引值为0,然后利用前两种方法中的任何一种添加控件数组的成员,将不会出现对话框询问是否创建控件数组。 null 7.4.3 控件数组的使用 【例7-8】 设计窗体,输入两个数,根据不同运算符计算结果。 设计步骤如下: (1) 建立应用程序用户界面并设置对象属性。利用Label控件,在窗体上拖曳出4个标签对象Label1~Label4;利用TextBox控件,拖曳出Text1和Text2文本框对象;利用Frame控件,拖曳出Frame1框对象。 null图7.15 用户界面与程序运行结果 null(2) 编写程序代码。单选钮Option1的Click事件代码为 Private Sub Option1_Click(Index As Integer) Dim x As Single, y As Single x = Val(Text1.Text) y = Val(Text2.Text) Select Case Index ' Index值从0开始 Case 0 ' 加 Label4.Caption = x + y Case 1 ' 减 null Label4.Caption = x - y Case 2 ' 乘 Label4.Caption = x * y Case 3 ' 除 Label4.Caption = x / y Case 4 ' 整除 Label4.Caption = X \ Y Case 5 ' 余数 Label4.Caption = x Mod y nullCase 6 ' 指数 Label4.Caption = x ^ y Case Else ' 字符串连接 Label4.Caption = x & y End Select End Sub 程序运行结果如图7.15右所示。 null 【例7-9】 编制程序,演示排序过程。 设计步骤如下: (1) 建立应用程序用户界面。选择“新建”工程,进入窗体设计器,首先增加一个用作容器的框架Frame1,选中Frame1,在其中增加一个文本框控件数组Text1(0)~Text1(10)和一个标签控件数组Label1(0)~Label1(10)。然后在窗体中增加一个命令按钮控件数组Command1(0)、Command1(1)和一个标签Label2,如图7.16所示。 (2) 设置对象属性,见表7-2。null表7-2 属性设置null图7.16 建立程序界面 null(3) 设计代码。在窗体的通用过程中声明数组变量: Dim a(10) As TextBox ' 显示数据的对象数组 窗体的Activate事件代码为 Private Sub Form_Activate() Randomize For i = 1 To 10 Set a(i) = Text1(i) a(i).Text = Int(Rnd * 199) - 99nulla(i).BackColor = RGB(255, 255, 255) Next End Sub 命令按钮控件数组Command1的Click事件代码为 Private Sub Command1_Click(Index As Integer) Command1(0).Enabled = False For i = 1 To 9 a(i).BackColor = RGB(255, 0, 255) nullLabel2.Caption = " 以A(" & Trim(i) & ")为擂主与后边的元素依次比较,如有比A(" & _ Trim(i) + ")小者,则与A(" & Trim(i) & ")交换。" For j = i + 1 To 10 a(j).BackColor = RGB(255, 0, 255) MsgBox "比较A(" & Trim(i) & ")和A(" & Trim(j) & ")", , "比较法排序" If Val(a(i).Text) > Val(a(j).Text) Then MsgBox "交换A(" & Trim(i) & ")和A(" & Trim(j) & ")", , "A(" & Trim(i) & _ ") > A(" & Trim(j) & ")"nullt = a(i).Text: a(i).Text = a(j).Text: a(j).Text = t End If a(j).BackColor = RGB(255, 255, 255) Next j a(i).BackColor = RGB(0, 255, 0) Next i a(10).BackColor = RGB(0, 255, 0) Label2.Caption = "" End Sub null图7.17 排序演示过程 null图7.18 排序结果 7.5 For Each...Next语句7.5 For Each...Next语句 For Each...Next与For...Next循环类似,两者都用来执行指定重复次数的一组语句。但For Each...Next语句专门用于数组或对象集合(本书不涉及集合)中的每个元素。语法为 For Each〈成员〉In〈数组〉 [〈语句列〉] [Exit For] Next [〈成员〉]null 【例7-10】 利用For Each...Next循环语句,求1+2+3+...+100的值。 设计步骤如下: (1) 建立应用程序用户界面并设置对象属性,如图7.19所示。 null图7.19 建立用户界面和设置对象属性 null(2) 编写事件代码。 “求和”按钮Command1的Click事件代码为 Private Sub Command1_Click() Dim a(100), b For i = 1 To 100 ' 给各数组元素赋值 a(i) = i Next i For Each b In a() ' 用For Each...Next循环语句求和 s = s + b ' 累加 null Next Label2.Caption = s ' 输出结果 End Sub “退出”命令按钮Command2的Click事件代码为 Private Sub Command2_Click() Unload Me End Sub 程序运行结果如图7.20所示。null图7.20 程序运行结果 null 【例7-11】 本例建立一个数组,并通过Rnd函数为每个数组元素赋给一个1~100之间的整数。然后用For Each...Next语句输出值大于50的元素,求出这些元素的和。如果遇到值大于90的元素,则退出循环。 设计步骤如下: (1) 建立应用程序用户界面并设置对象属性,如图7.21所示。 null图7.21 建立用户界面和设置对象属性 null(2) 编写事件代码。在“通用”的“声明”段中输入: Dim aa(1 To 20) “执行”命令按钮Command1的Click事件代码为 Private Sub Command1_Click() For i = 1 To 20 aa(i) = Int(Rnd * 100) ' 产生随机数 Next i For Each a In aa If a > 50 Then Label2.Caption = Label2.Caption & Space(2) & anulls = s + a ' 累加求和 End If If a > 90 Then ' 值大于90的元素 MsgBox "数据超过90!", 0, "退出" ' 消息框 Exit For ' 退出本循环 End If Next a Label4.Caption = s End Sub 程序运行结果如图7.22所示。 null图7.22 程序运行结果 习 题 七 习 题 七 7.1 将下列字符存放到数组中,并以倒序打印出来。字符如下: a b q r s t w x y e m n 7.2 从键盘输入10个数,要求按从小到大的顺序打印出来。 null 7.3 某数组有20个元素,元素的值由键盘输入,要求将前10个元素与后10个元素对换。即第1个元素与第20个元素互换,第2个元素与第19个元素互换……第10个元素与第11个元素互换。输出数组原来各元素的值和对换后各元素的值。 7.4 随机产生10个两位整数,找出其最大值、最小值和平均值。 null 7.5 求斐波那契(Fibonacci)数列。Fibonacci数列问题起源于一个古典的有关兔子繁殖的问题。假设在第1个月时有一对小兔子,第2个月时成为大兔子,第3个月时成为老兔子,并生出一对小兔子(一对老,一对小)。第4个月时老兔子又生出一对小兔子,上个月的小兔子变成大兔子(一对老,一对大,一对小)。第5个月时上个月的大兔子成为老兔子,上个月的小兔子变成大兔子,两对老兔子生出两对小兔子(两对老,一对中,两对小)…… null 7.6 编写程序,建立并输出一个10×10的矩阵,该矩阵两条对角线元素为1,其余元素均为0。 7.7 输出魔方阵,魔方阵是由自然数1~n2(n为奇数)构成的方阵,其各行、各列以及对角线元素之和均相等。 null排列魔方阵中各元素时,先将数“1”放在第1行的当中一列。2~n2中的各数依次按以下规律排列: (1) 每一个数存放的行比前一个数的行数减1,列数加1。 (2) 若上一个数在第1行,则下一个数在第n行(最下一行)。 (3) 若上一个数在第n列,则下一个数在第1列,而行数减1。 (4) 若某数按以上规律应放的位置已被其他数占据,则该数放在上一数的下面。null 7.8 设某班共10名学生,为了评定某门课程的奖学金,按规定超过全班平均成绩10%者发给一等奖,超过全班成绩5%者发给二等奖。试编制程序,输出应获奖学金的学生名单(包括姓名、学号、成绩、奖学金等级)。 7.9 有一个6×6的矩阵,各元素的值由键盘输入,求全部元素的平均值,并输出高于平均值的元素以及它们的行、列号。 null 7.10 假设4个百货公司一天销售电视机台数如表7-3所示。试编写求这4个百货公司一天销售电视机总金额的程序。各种牌号电视机单价如表7-4所示。 null表7-3 日销售电视机数 null表7-4 电视机单价null 7.11 计算全班学生每门课的总分,同时计算每个学生的总分,最后计算总平均分数。假设全班有4个学生,每个学生考3门课,考试成绩如表7-5所示。null表7-5 学生成绩表 null 7.12 设有一个5×5的方阵,其中元素是由计算机随机生成的小于100的整数。求: (1) 对角线上元素之和; (2) 对角线上元素之积; (3) 方阵中最大的元素。 7.13 设有10位同学的数学、语文、外语三门成绩,见表7-6。 null表7-6 学生成绩表 null试编写程序,实现: (1) 查询成绩。 (2) 计算各科平均分数。 (3) 显示各科平均分以下的同学姓名。 null 7.14 使用选项按钮组计算银行本息和。设银行定期存款年利率为:1年期2.25%,2年期2.43%,3年期2.70%,5年期2.88%(不计复利)。今有本金a元,5年以后使用,共有以下6种存法: (1) 存一次5年期。 (2) 存一次3年期,一次2年期。 (3) 存一次3年期,两次1年期。 (4) 存两次2年期,一次1年期。 (5) 存一次2年期,三次1年期。 (6) 存五次1年期。 分别计算各种存法5年后到期时的本息合计。 null 7.15 利用一维数组统计一个班学生0~9、10~19、20~29 …… 90~99及100各分数段的人数。 7.16 利用随机函数模拟投币结果。设共投币100次,求“两个正面”、“两个反面”、“一正一反”三种情况各出现多少次。 7.17 某校召开运动会,有10人参加男子100米短跑决赛,运动员号码和成绩见表7-7,试设计程序,按成绩排名次。 null表7-7 运动员号码和成绩 null 7.18 设计一个“通讯录”程序。当用户在下拉列表框中选择某一人名后,在“电话号码”文本框中显示出对应的电话号码。当用户选择或取消“单位”和“住址”复选框后,将打开或关闭“工作单位”或“家庭住址”文本框。 7.19 用“筛法”找1~100之间的全部素数。“筛法”求素数表是由希腊著名数学家Eratost Henes提出来的,其方法是在纸上写出1~n的全部整数,然后逐一判断它们是否素数,找出一个非素数就把它挖掉(筛掉),最后剩下的就是素数。具体做法是: null (1) 先将1挖掉。 (2) 用2去除它后面的每个数,把能被2整除的数挖掉,即把2的倍数挖掉。 (3) 用3去除它后面的每个数,把3的倍数挖掉。 (4) 分别用4、5……各数作为除数去除这些数后面的各数(4已被挖掉,不必再用4当除数,只需用未被挖掉的数作除数即可)。这个过程一直进行到除数为为止(如果不是整数就取其整数部分)。 (5) 经如此“筛法”,剩下的部分全都是素数。
/
本文档为【数组】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索