课件编号9796383

高中信息技术综合库——算法实例的程序实现2

日期:2024-05-03 科目:信息技术 类型:高中试卷 查看:13次 大小:42684Byte 来源:二一课件通
预览图 0
高中,信息技术,综合,算法,实例,程序
    高中信息技术综合库———算法实例的程序实现2 一、高中信息技术综合库———算法实例的程序实现2 1.对10个数据进行冒泡排序,需要比较的次数是(  ) A.90 B.110 C.45 D.55 【答案】C 【知识点】排序算法及程序实现 【解析】【解答】通过嵌套for循环实现排序,外部循环需要9次,内部循环比较次数分别为9,8,7,6,5,4,3,2,1。故需要比较的次数是9+8+7+6+5+4+3+2+1=45次。故答案选C。 【分析】本题考查的是冒泡排序。冒泡排序算法的原理: ①比较相邻的元素。如果第一个比第二个大,就交换他们两个。 ②对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 ③针对所有的元素重复以上的步骤,除了最后一个。 ④持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 2.5个学生的身高(单位:cm)依次为:172,177,180,168,165,采用冒泡排序对这5个学生的身高数据进行从高到低排序,第二遍加工后的数据为(  )。 A.180,177,172,168,165 B.180,172,177,168,165 C.165,172,177,180,168 D.165,168,172,177,180 【答案】A 【知识点】排序算法及程序实现 3.对于数列:1、2、3、4、5,用二分法查找数据“4”,最少的查找次数是(  )。 A.4次 B.3次 C.2次 D.1次 【答案】C 【知识点】查找算法及程序实现 4.数组a中存储的是两个数列交替排序的n个正整数,下标为奇数的数组元素都是奇数且为升序排列,下标为偶数的数组元素都是偶数且为降序排列。排序示例如下。 a(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9) a(10) 1 10 3 8 5 6 7 4 9 2 依据对分查找思想,设计一个在数组a中查找数据key的程序,实现该功能的VB程序如下,请回答下列问题: Private Sub Search_Click() Const n = 10 Dim a(1 To n) As Integer Dim i As Integer, j As Integer, m As Integer, f As Boolean, key As Integer '读取一组正整数,按上述规则存入数组 a 中。代码略 key = Val(Text1.Text) If key Mod 2 = 1 Then i = 1 Else i = 2 j = n :f = False Do While i <= j And Not f If key Mod 2 = 0 Then m = (i + j) \ 2 - (i + j) \ 2 Mod 2 Else m = ① End If If key = a(m) Then f = True ElseIf Then j = m - 2 Else i = ② End If Loop If f Then Label1.Caption = Str(m) Else Label1.Caption = "不存在" End Sub (1)观察程序代码,该事件处理过程名为   。 (2)程序加框处代码有错,请改正。 (3)请在划线处填入合适的代码。 ①   ②    【答案】(1)Search_ Click(  ) (2)key Mod 2=0 And key >a(m) 或者key Mod 2= 1 And key a(j + 1) + Int(Rnd * 2) Then t = a(j): a(j) = a(j + 1): a(j + 1) = t End If Next j Next i 程序运行后,a(1)到a(5)的值不可能是(  ) A.1 2 3 5 7 B.3 2 1 5 7 C.2 1 3 5 7 D.1 2 5 3 7 【答案】D 【知识点】排序算法及程序实现 6.水仙花数也被称为超完全数字不变数,是指一个3位数,它的每个位上的数字的3次幂之和等于它本身(例如:13+53+33=153)。课堂上老师布置作业要求用VB编写一个程序,找出所有的水仙花数,下面是小丽同学完成的作业,其中有几处错误,请帮她修改。 Private Sub Command1_Click() Dim i As Long, j As Long, k As long Dim As long For i=0 To 9 For j=0 To 9 For k=0 To 9 s=i*100+j*10+k If(i^3)+(j^3)+(k^3)=s The ... ...

    ~~ 您好,已阅读到文档的结尾了 ~~