相关试卷

  • 1、文本加密:利用Mid和Asc函数获取文本和密码字符串每一位字符的ASCII码,然后将文本中某一位字符串的ASCII码与相应的密码字符串中某一位的ASCII码就行异或运算。最后利用Chr函数将运算出的ASCII转换为字符。运行程序,在文本框中输入要加密的字符串和密码,并点击“加密”按钮,在文本框中显示加密或解密后的字符串,显示结果如下图所示。

    程序代码如下:

    Dim x As String

    Dim y As String

    Dim c(1 To 100) As String

    Private Sub Command1_Click()

        Dim z As String

        x = Text1.Text

        y = Text3.Text

        z = f(x,y)

        Text2.Text = z

    End Sub

    Function f(x As String, y As String) As String

        Dim i, w, achar As Integer

        Dim mm As String

        w = Asc(y)

        For i = 1 To Len(x)

            achar = Asc(Mid(x, i, 1))

            c(i) =  Chr(x Xor y)     ‘

        Next i

        For t = 1 To Len(x)

            mm = mm+achar       ‘

        Next t

        f = mm

    End Function

    程序代码有2处错误,请在画线处写上正确代码。

  • 2、在数据压缩中,一个常用的途径是行程长度压缩。对于一个待压缩的字符串而言,我们可以依次记录每个字符及重复的次数。这种压缩,对于相邻数据重复较多的情况比较有效。 例如,如果待压缩串为“AAABBBBCBB”,则压缩的结果是(A,3)(B,4)(C,1)(B,2)。

    现要求根据输入的字符串(长度在1000 以内),全部由数字和字母组成,得到大小写不敏感压缩后的结果(即所有小写字母均视为相应的大写字母)。如:原字符串为aAABBbBCCCaaaaa,压缩后的结果(A,3)(B,4)(C,3)(A,5)。

    实现这一功能的程序代码如下:

    Private Sub Command1_Click()

        Dim s As String, s1 As String

        Dim tmp As String, ans As String

        Dim i As Integer, j As Integer

        s = Text1.Text

        s1 = ""

        For i = 1 To Len(s)

            s1 = s1 & ToUpcase()

        Next i

        i = 1

        Do While i <= Len(s1)

            tmp = Mid(s1, i, 1)

            ans = ans & "(" & tmp & ","

            j = i + 1

            Do While j <= Len(s1) And Mid(s1, j, 1) = tmp

                j = j + 1

            Loop

            ans = ans && ")"

            

        Loop

        Text2.Text = ans

    End Sub

    Function ToUpcase(c As String) As String

        If c >= "a" And c <= "z" Then

            ToUpcase = Chr(Asc(c) - 32)

        Else

            ToUpcase = c

        End If

    End Function

    在画线处填入适当的语句或表达式,将程序补充完整。

  • 3、全班45位同学拍毕业照,每排15人共3排,全班最高的一批站第3排,最低的一批站第一排,每排最高的站中间(第8个),两边依次身高递减。小王设计一个程序,实现队列安排功能,程序界面如下图所示。

    代码如下:

    Dim a(1 To 100) As String, a1(1 To 100) As String, b(1 To 100) As Integer, b1(1 To 100) As Integer

    Private Sub Form_Load()

        '读取数据库中学生相关信息,姓名存数组a,身高存数组b

    End Sub

    Private Sub Command1_Click()

        Dim temp As Integer, temp2 As String, k As Integer, s As String, s1 As String

        For i = 1 To 44

            For j = i + 1 To 45

                If b(i) > b(j) Then

                    temp = b(i): b(i) = b(j): b(j) = temp

                    temp2 = a(i): a(i) = a(j): a(j) = temp2

                End If

            Next j

        Next i

        For x = 1 To 3

            k = 0

            For y = 15 * x ToStep -1

                If x Mod 2 = 1 Then

                    If y Mod 2 = 1 Then

                        b1(15 * (x - 1) + 8 - k) = b(y)

                        a1(15 * (x - 1) + 8 - k) = a(y)

                    Else

                        k = k + 1

                        b1(15 * (x - 1) + 8 + k) = b(y)

                        a1(15 * (x - 1) + 8 + k) = a(y)

                    End If

                Else

                    If y Mod 2 = 1 Then

                        k = k + 1

                        b1(15 * (x - 1) + 8 - k) = b(y)

                        a1(15 * (x - 1) + 8 - k) = a(y)

                    Else

                        b1(15 * (x - 1) + 8 + k) = b(y)

                        a1(15 * (x - 1) + 8 + k) = a(y)

                    End If

                End If

            Next y

        Next x

        For i = 1 To 45

            s = s + " " + a1(i)

            s1 = s1 + " " + Str(b1(i)) + " "

            IfThen

                Label1.Caption = Label1.Caption + " 第" + Str(i \ 15) + " 排" + s + vbCrLf + s1 + vbCrLf

                ' fvbCrLf 表示回车换行

                s = ""

                s1 = ""

            End If

        Next i

    End Sub

    要使程序实现此功能,在画线处填入适当的语句或表达式,将程序补充完整。

  • 4、给定n(n小于1000)个整数,整数的范围在0到m之间,请使用“对分法”思想求出这n个整数的中位数(所谓中位数,是指将这n个数排序之后,排在正中间的数)。

    小丫编写了一个求中位数的VB程序,功能如下:单击“求中位数”按钮Command1,程序根据输入的n和m,随机产生n个在[0,m]范围内的数。程序运行界面如下所示:

    实现上述功能的VB 程序如下:

    Dim x(1 To 1000) As Long

    Private Sub Command1_Click()

        Dim n As Integer, i As Integer, rbound As Integer, mid As Integer

        Dim m As Integer, count As Integer

        n = Val(Text1.Text)

        m = Val(Text2.Text)

        List1.Clear

        Randomize

        For i = 1 To n

            x(i) =Int(Rnd * (m + 1))      ' 产生[0,m] 的随机数

            List1.AddItem x(i)

        Next i

        lb = 0

        rb = m

        Do While lb <rb

            mid = (lb + rb) \ 2

                 ①     

            For i = 1 To n

                If     ②      Then

                    count = count + 1

                End If

            Next i

            If count > n \ 2 Then

                lb = mid + 1

            Else

                      ③      

            End If

        Loop

        Text3. text = str(rb)

    End Sub

    程序要实现该功能,画线处应填入的代码为:

  • 5、小丫觉得回文字符串太优美了(回文字符串是指顺读和倒读都一样的字符串,如“123321”),为此编写了VB 程序。程序运行时,单击按钮Command1 后,根据文本框Text1 中输入的内容判断并输出是不是回文串。实现上述功能的VB 代码如下。

    Private Sub Command1_Click()

        Dim s As String, f As Boolean, L As Integer

        s = Text1.Text

        j = Len(s)

        i = 1

        Do while

            i = i+1

            j = j-1

        Loop

        If Then Print "是回文串" Else Print " 不是回文串"

    End Sub

    在画线处填入合适代码,使程序能正常运行。

  • 6、某班级学生为毕业晚会的一个节目设计一个仿“V”字的造型,先筛选出班级里所有男生,然后将参演的n 名男生按照身高,摆出中间低两边高(先右后左)的造型,如图所示。

    原1-7号男生身高

    171 172 180 174 176 179 178

    筛选排序后序列

    171 172 174 176 178 179 180

    “造型设计”后序列

    180 178 174 171 172 176 179

    王林同学用VB编写模拟“节目造型”程序,功能如下:从数据库中导出所有学生编号、性别和身高数据;单击“筛选排序”按钮Command1,选出“男生”且按身高升序排列显示在文本框Text1中;单击“设计造型”按钮Command2,根据身高仿“V”字的造型进行有序排列,并将结果显示在文本框Text2 中。程序运行界面如图所示。举例说明如下:

    Const n = 7

    Dim h2(1 To n) As Integer

    Dim height1(1 To n) As Integer, height 2 (1 To n) As Integer

    Dim i As Integer, j As Integer, temp As Integer

    Dim sex(1 To n) As Boolean ' 男生sex=true

    Private Sub Form_Load()

        'n名学生的身高和性别由数据库导出,分别存储在数组height1和sex中,代码略!

    End Sub

    Private Sub Command1_Click()

        For i = 1 To n - 1

            For j = n To i + 1 Step -1

                IfThen

                    temp = height1(j): height1(j) = height1(j - 1): height1(j - 1) = temp

                End If

            Next j

        Next i

        For i = 1 To n

            Text1.Text = Text1.Text + " " + Str(height1(i))

        Next i

    End Sub

    Private Sub Command2_Click()

        Dim left, right As Integer, i As Integer, mid As Integer

        mid = Int((1 + n) / 2)

        left = 0: right = 0

       

        For i = 2 To n Step 2

            right = right + 1

            height2(mid + right) = height1(i)

            left = left + 1

            

        Next i

        For i = 1 To n

            Text2.Text = Text2.Text +“ “ + Str(height2(i))

        Next i

    End Sub

    为实现以上功能,请在画线处填写正确代码。

  • 7、设有n盏灯,放在一排。从1到n依次顺序编号。有n个人也从1 到n依次编号。第1 个人(1号)将灯全部关闭,第2 个人(2号)将2 的倍数的灯打开,第3个人(3号)将编号为3 的倍数的灯做相反处理(该灯如果已打开,则将它关闭;如为关闭则将它打开),以后的人和3号一样,将编号为自己号数倍数的灯做相反处理。问当n个人操作后,哪几盏灯是亮的(亮灯为0,关闭为1)。程序代码如下:

    Private Sub Command1_Click()

        Const n = 20

        Dim i As Integer, j As Integer

        Dim a(1 To n) As Integer

        For j = 1 To n

            a(j) = 0

        Next j

        For i = 1 To n

            For j = 1 To n

                Ifthen

                   

                End If

            Next j

        Next i

        For j = 1 To n

            If a(j) = 0 Then list1.AddItem Str(j)

        Next j

    End Sub

    为了实现程序该功能,在画线处填写正确代码。

  • 8、有如下VB 程序:

    Private Sub Command1_Click()

        Dim i As Integer, j As Integer, k As String, n As Integer, s As String

        s = "abcdefghijklmn"

        n = 4

        List1.Clear

        For i = 1 To n

            k = Mid(s, i + 1, i)

            For j = 1 To Len(k)

                k = k + Mid(s, j, 1)

            Next j

            List1.AddItem k

        Next i

    End Sub

    该程序运行后,在列表框List1中显示的是(   )

    A、 B、 C、 D、
  • 9、某VB 程序代码如下:

    Function arr(x As Integer) As Boolean

        Dim s As Integer, i As Integer

        s = 1

        For i = 2 To x \ 2

            If x Mod i = 0 Then s = s * i

        Next i

        If s = x Then

            arr = True

        Else

            arr = False

        End If

    End Function

    Private Sub Command1_Click()

        Dim i As Integer

        For i = 2 To 10

            If arr(i) Then List1.AddItem str(i)

        Next i

    End Sub

    单击Command1按钮后,List1中显示的结果是(   )

    A、2、3、4、5、6 B、2、4、6 C、4、6、8 D、6、8、10
  • 10、高电平代表1,低电平代表0,如(010)2 的数字波形为 ,(110)10用8个电平波形表示的话应该是(    )
    A、 B、 C、 D、
  • 11、查看下面的程序代码,在文本框Text1 中输入的值为100 时,该程序的作用为(  )

    Private Sub Command1_Click()

        Dim sum, k, j, n As Integer

        n = Val(Text1.Text)

        sum = 0: k = 1

        Do While k <= n

            j = 1

            Do While j <= k

                sum = sum + 1: j = j + 1

            Loop

            k = k * 3

        Loop

        Text2.Text = CStr(sum)

    End Sub

    A、1+2+3+…+100 B、20+21+22+23+…2100 C、(11111111)2 转十进制 D、(11111)3 转十进制
  • 12、王老师在使用VB程序要实现n!的功能。

    Private Sub Command1_Click()

        Dim p As Integer

        Dim sum As Long

        p = Val(Text1.Text)

        sum = fx(p)

        Text2.Text = CStr(sum)

    End Sub

    Function fx(x As Integer) As Long

        If x = 1 Then

            fx  = 1

        Else

            fx =    

        End If

    End Function

    要该程序实现此功能,横线处的代码为(  )

    A、x(x)*(x-1) B、fx(x)*x C、fx(x-1)*x D、fx(x-1)*(x-1)
  • 13、一个“抛物线 .bmp”图像文件,相关信息如图所示。根据下图可以推断出,该图像的每个像素需要位数的十六进制是(  )

    A、4H B、8H C、18H D、20H
  • 14、有如下程序段:

    map =“ 01234567890123456789012345”

    tel = Text1.Text

    For i = 1 To Len(tel)

        c = Mid(tel, i, 1)

        If c >=“ 0” And c <=“ 9” Then

            s = s + c

        ElseIf c >“ A” And c <=“ Z” Then

            s = s + Mid(map, Asc(c) - Asc(“A”) + 1, 1)

        End If

    Next i

    在text1 文本框中输入“hi,NICETOSEEYOU-2016”,程序执行完后s 的结果是( )

    A、1602726222282016 B、2713837333392016 C、44,1602726222282016-2016 D、3824948444402016
  • 15、有如下程序段:

    n = 12

    f = Val(Text1.Text)

    left = 1

    right = n

    Do While left < right

        middle = (left + right) \ 2

        If f <= a(middle) Then

            right = middle

        Else

            left = middle + 1

        End If

    Loop

    A数组元素A(1) 到A(12) 中的数分别是1 4 6 10 11 16 17 18 19 20 21 55,在文本框text1 中输入值7 赋给变量f,经过该程序段“加工”后,right 的值为(  )

    A、4 B、6 C、9 D、2
  • 16、使用UltraEdit 软件观察字符串的内容,如图所示,则字符串中小写字母的个数为(  )

    A、3 B、4 C、6 D、12
  • 17、某VB程序功能:输入正整数n,单击命令按钮Command1后,则会衍生出一串有规律的数字,形式为“1 2 3…n-1 n n-1…3 2 1 ”。例如n=6时,显示的数字串为“1 2 3 4 5 6 5 4 3 2 1 ”。

    Private Sub Command1_Click()

      Dim a As intger, i As intger, s As String

      n = Val(Text1.Text)

      s = ""

      For i = 1 To 2 * n - 1

        If i > n Then     ①      Else      ②      

      Next i

      text2.Text = s

    End Sub

    为实现以上功能,①②处分别填写(    )

    A、①s=Str(2*n-i)     ②s=Str(i) B、①s=s+Str(2*n-i)   ②s=s+Str(i) C、①s=s+Str(2*n-1)   ②s=s+Str(2*n) D、①s= Str(2*n-1)    ②s= Str(2*n)
  • 18、“猴子吃桃”问题:一天,一只猴子从树上摘下若干个桃子,当即吃了一半,觉得不过瘾,又吃了一个。第二天这只猴子接着吃剩下的一半,还觉得不过瘾,又吃了一个。以后它每天都吃前一天剩下的一半再多吃一个。到第四天,猴子按规则吃完桃子后,只剩一个桃子。问猴子第一天摘了多少个桃子。下图所示是根据分析所画出的部分流程图。采用倒推法,其中设定M 的初始值为1(第四天吃完后剩下的桃子数),D 为天数(初始值为5)。流程图中相应空缺位置①②处应分别填写(  )

    A、M=M*2+1 D=1 B、M=M*2+1 D<1 C、M=2*(M+1) D=1 D、M=2*(M+1) D<1
  • 19、一个约3445KB 未经压缩的wav 格式声音文件,其相关信息如方框所示。由此可知,该声音文件的时长约是(  )

    A、20 秒 B、15 秒 C、40 秒 D、25 秒
  • 20、老罗创作多媒体作品,他先使用Photoshop软件制作一张背景图片,然后使用Flash软件制作动画。

    请回答下列问题:

    (1)、如图a所示,当前状态下,下列描述正确的是(多选,填字母:A .使用画布大小命令将画布变大,“背景”图层中的图像大小也会随之变大 / B .选中“标识”图层,调整该图层图像的不透明度 / C .选中“西湖美景”图层,对其中的文字进行自由变换,字号大小也会随之改变 / D .选中 “飞鸟”图层,修改其图层样式)。

    图a

    (2)、如图b时间轴所示,当前状态下空白关键帧的帧数共有(填数字)。

    图b

    (3)、“西湖”图层利用库中“杭州西湖”元件(如图c所示),在舞台中制作补间动画,实现从舞台外,淡入出现在舞台中,这种动画属于补间动画。

    图c

    (4)、如图b所示,当动画播放到第30帧时,“声音”图层中的声音(该声音时长为30秒)突然停止,若要使该声音播放到第50帧与动画同步,“声音”图层需要进行的操作是
    (5)、测试影片时,单击“杭州西湖”按钮,实现在浏览器中打开位于同一目录下“xhjs.txt”文件的内容,则“杭州西湖”按钮添加的动作脚本为
上一页 674 675 676 677 678 下一页 跳转