试题

试题 试卷

logo

题型:综合题 题类:模拟题 难易度:困难

浙江省教育绿色评价联盟2018届高三下学期信息技术选考适应性考试试卷

【加试题】求数组a中下降数列的方法,算法描述如下:

⑴用数组b存储最小下降数列中最小的元素(查找过程中的最小值),b(1)为数组a第1个元素。

⑵加入方法:将a(i)与数组b中的每个元素依次逐个比较:

若a(i)比b(j)小就用a(i)替换b(j)中的值,将a(i)添加到第j个下降数列中,并存储在c数组的c(j)中。

若a(i)比b(j)都大,则在数组b最后添加a(i)新的元素,将a(i)添加到第j个下降数列中,并存储在c数组的c(j)中。

⑶若数组a各元素的值为34,54,3,76,2,3时,则3个下降数列分别为“34,3,2”“54,3”“76”

程序运行界面如图所示。

小明依据上述描述设计了如下VB程序。请回答下列问题:

(1)、若数组a的值是“145,34,12,134,12”,数组b(1)的值是
(2)、请在画线处填入合适的代码。

Const n=20

Dim a(1 To n)AS Integer

Private Sub Form_Load()

‘读取n个数据,依次存储到a(1),a(2),……,a(n)中,代码略

End Sub

Private Sub Command1_Click()

Dim b(1 To n)As Integer        ‘存储数列最小的值

Dim c(1 To n)As String         ‘存储下降数列

Dim i As Integer,

Dim bottom As Integer,

Dim J As Integer

Dim bn As Integer               ‘存储下降数列个数

  b(1)=a(1)

    ①    

  c(1)=Str(a(1))

  For i==2 To n

    For j=1 To bn

    If    ②     Then

      b(i)=a(i)

      c(j)=c(i)+Str(a(i))

      Exit For

     End If

    Next j

    If j>bn Then

       bn=bn+1

          ③   

       c(bn)=Str(a(i))

      End If

    Next i

  For i=1 To bn

     List1.AddItem c(i)

  Next i

  Text2.Text=“数列中共有”+Str(bn)+“个下降序列”

End Sub

 ② ③ 

举一反三
【加试题】德国数学家哥德巴赫曾猜测:任何大于6的素数都可以分解成两个素数(素数对)的和。但有些偶数可以分解成多种素数对的和,如:10=3+7,10=5+5,即10可以分解成两种不同的素数对的和。

小敏编写了一个VB程序,用来求一个偶数(6到100之间)可能存在多少这样是素数岁(注:A+B与B+A认为是相同素数对,不重复统计),并把这些结果输出到一个列表框中,通过逻辑推理,小敏发现这些素数对都是奇数,所以她只需要验证奇数的素数对即可,运行界面如图所示,程序代码如下。但加框处代码有错误,请改正。

Dim IsPrime(100)As B00lean  ‘用来存储是否素数,True为素数,False为非素数

privatw Suh Command1_Click()

Dim x As Integer,y As Integer,i As Integer,num As Integer

Call Init              ‘调用Init函数

x=Val(Text1.Text)

y=x\2

num==0

For i==3 To y Step 2

If  Then                  ‘①

    num=num+1

    List1.AddItem Str(x)+“=”+Str(i)+“+”+Str(x-i)

End If

 Next i

Label2.Caption=“偶数”+Str(x)+“共有”+Str(num)+“个素数对。”

End Sub

Sub Init()           ‘初始化IsPrime数组的值

  Dim i As Integer.j As Integer,X As Integer

  For i=3 To 100 Step 2

    X=Int(Sqr(i))

    For  Step 2                ‘②

    If i Mod j=0 Then Exit For

    Next j

    If i>x Then IsPrime(i)-True Else IsPrime(i)=False

  Next i

End Sub

①处加框代码应该为{#blank#}1{#/blank#}。

②处加框代码应该为{#blank#}2{#/blank#}。

返回首页

试题篮