1. 小李忘记了自己的银行账号密码,非常着急,请帮她尽快找出密码。幸亏她还隐约记得自己的密码信息:①密码是六位数字,前面两位为31;②最后两位数字相同;③能被16和46整除。程序界面如图所示,单击“帮助找回密码”按钮Command1后,可能的密码显示在列表框List1中,实现上述功能的VB代码如下。

请回答下列问题:

(1) 解决此问题的算法是(选填:枚举算法/解析算法)。
(2) 在程序中划线处填入适当的代码。

Private Sub Command1_ Click()

    Dim s As Long

    Dim iAs Integer,a As Integer,b As Integer

    For i=0 To 9999 Step

        s=310000+i

        If s Mod 46=0 Then

            a=

            b=s\ 10 Mod 10

            If a=b Then List1. AddItem Str(s)

        End If

    Next i

End Sub

【考点】
枚举算法及程序实现;
【答案】

您现在未登录,无法查看试题答案与解析。 登录
综合题 普通
能力提升
真题演练
换一批
1. [枚举的综合应用]在一个数组中存储了若干个同学的技术成绩小题分,其中a(1)存储学生个数,a(2)开始按顺序存储小题分数据。每个学生有33个小题的数据,例:a(2)~a(13)是学生1的信息选择题得分,a(27)~a(30)是学生1的信息4个主观题得分。具体如下表

题号

1-12

13-25

26-29

30- 33

科目题型

信息客观题

通用客观题

信息主观题

通用主观题

满分分值

每题2分

每题2分

4/8/7/7

6/9/3/6

小李根据上述描述,设计了一个统计所有同学信息各题得分率的算法。程序运行后首先在列表框List1显示信息技术各小题得分,单击“计算”按钮“Command1",在列表框List2显示信息各题的题号和得分率,在文本框Text1输出所有同学的信息平均分(平均分=各题得分率*分值之和)。算法的VB程序如下,回答下列问题。

(1) 根据题目描述,使用如图所示数据,a(95)的数值是
(2) 在程序划线处填上合适代码,使程序完整。

Dim a(1 To 1000) As Integer, n As Integer

Private Sub Command1_Click()

    Dim i As Integer, j As Integer

    Dim fz(1 To 16) As Integer     'fz数组存储信息各题满分值

    Dim b(1 To 33) As Double    '数组b存储全卷各题的平均得分

    For i=1 To 16    '数组fz存储信息16个小题的满分值   

        If i<= 12 Then fz(i)=2

        fz(13)=4 : fz(14)=8 : fz(15)=7 : fz(16)=7

    Next i

    For i=2 To n      '把数组a数据分别统计到各题中

       

        b(j)=a(i)+ b(j)

    Next i

    For i=1 To 33    '仅处理信息各题的平均分

        If i<= 12 Then

            b(i)=b(i) / (a(1) * fz(i))      ' 计算信息选择题各题的得分率

        ElseIfi>= 26 Andi<= 29 Then

            b(i)=

        End If

    Next i

    For i=1 To 16

        If i> 12 Then j=i+13 Else j=i

        b(j)=Int(b(j) * 1000+0.5) / 10      '对结果四舍五入保留1位小数

        List2. AddItem Str(i) 十Str(b(j))+"%"

        ave=

    Next i

    Text1. Text=Str(ave / 100)

End Sub

Private Sub Form_ Load()

    '读入数据到数组a,数据个数n,代码略

End Sub

综合题 困难