2017年3月浙江省十校联盟选考信息技术试卷
发布:2024/4/20 14:35:0
一、选择题(本大题共12小题,每小题2分,共24分.在每小题给出的四个选项中,只有一个符合题目要求)
-
1.下列软件中,主要用于编辑“静待花开。psd”文件的是( )
组卷:8引用:3难度:0.9 -
2.下列关于信息获取与交流的说法中正确的是( )
组卷:12引用:2难度:0.9 -
3.在Word中输入“boxs”时,会立刻变成“boxes”,这是因为Word软件具有( )
组卷:14引用:3难度:0.9 -
4.下列关于Access数据库与数据表的说法不正确的是( )
组卷:11引用:1难度:0.5 -
5.某算法的部分流程图如图所示,执行这部分流程后,下列说法正确的是( )
组卷:5引用:1难度:0.7
二、非选择题(本大题共5小题,其中第13小题4分,第14小题5分,第15小题8分,第16小题4分,第17小题5分,共26分)
-
16.某地2017.1-2017.2月的日期及日最高气温数据保存在数据库中.现要求根据日最高气温,找出这两个月中连续降温的次数、连续最长降温天数及其日期.小刘为此编写了VB程序,程序运行时,单击按钮Commandl后,在标签Labell和Label2上输出运行结果.实现上述功能的VB代码如下,但加框处代码有错,请改正.
Dim a(1 To 59)As String’依次存储2017.1-2017.2 月的日期数据
Dim b(1 To 59)As Integer’依次存储2017.1-2017.2月的日最高气温数据
Private Sub Form_Load( )
’本过程从数据库中按2017.1-2017.2的日期次序,读取日期和日最高气温数据,分别并存储在数组a和数组b中
’代码略
End Sub
Private Sub Commandl_Click( )
Dim d As Integer,n As Integer
Dim dmax As Integer,m As Integer
n=0:d=1:dmax=1
For i=2 To 59
d=d+1
Else
d=1
End If
If d=2 Then n=n+1
If d>dmax Then
dmax=d
m=i
End If
Next i
Label 1.Caption=〃连续降温次数〃& Str(n)
Label 2.Caption=〃连续最长降温日期为:
&〃持续天数为:〃& Str(dmax)
End Sub.组卷:12引用:1难度:0.1 -
17.小刘在研究n个数的冒泡排序算法时,发现可以从两个方面进行优化:
(1)在每遍冒泡过程中,若最后一次交换的是last与last-1位置的数,则last位置之前的相邻数据均已有序.进行下一遍冒泡时,无序区域设置为[last,n],这样一遍排序可能使当前无序区域缩小.
(2)若在某一遍排序中没有数据交换,说明待排序数据都已经有序,冒泡排序过程可在此遍排序后终止.因此可以引入一个逻辑变量flag,记录在每遍排序过程中是否发生了交换,每遍排序结束时检查flag,若未发生过交换则终止排序.
小刘按上述方法编写的冒泡优化VB程序,功能如下:单击“生成数据”按钮Commandl后,生成一组随机的两位整数存入数组a,并显示在列表框Listl中.单击“排序”按钮Command2后,对数组a 中的数据进行降序排序,排序后的数据显示在列表框List2中,排序过程中实际的 泡遍数显示在标签Label2上.程序运行界面如图所示.
实现上述功能的VB程序如下,请回答下列问题:
(1)若按小刘优化后的冒泡排序算法,对数据28,15,10,8,12进行降序排序,冒泡的遍数为
(2)请在①②③横线处填入合适的代码.
Dim a(1 To 20)As Integer
Private Sub Command1_Click( )
Dim i As Integer,j As Integer
Listl.Clear:List2.Clear
Randomize
’产生20个无重复的随机整数,范围为[10,99],并存储在数组a中
For i=1 To 20
a(i)=
j=1
For j=1 To i-1
If a(i)=a(j)Then
i=i-1
Exit For’退出循环
End If
Next j
Next i
For i=1 To 20
Listl.Addltem Str(a(i))
Next i
End Sub
Private Sub Command2_Click( )
Dim flag As Boolean,i As Integer,j As Integer
Dim temp As Integer,num As Integer,last As Integer
num=0:last=1
flag=True
Do While
flag=False
For
If a(j)>a(j-1)Then
temp=a(j):a(j)=a(j-1):a(j-1)=temp
last=j
flag=True’有交换发生
End If
Next j
num=num+1
Loop
For i=1 To 20
List2.Additem Str(a(i))
Next i
Label3.Caption=〃本次排序的冒泡遍数为:〃& Str(num)
End Sub.组卷:13引用:1难度:0.1