4.1 程序设计语言的基础知识 知识点题库

VB表达式9\8/2 + 12 Mod 3*3 -2^-2 的值是(   )
A . 3.25 B . 4.75 C . 5 D . 7
使用“字符洗牌”程序模拟扑克洗牌的操作,为了打乱牌序,把手上的扑克牌中间抽一部分放到最上面,完成一次洗牌(如字符串“1234ABCD”,若把中间的第3 个到第5个字符抽出并保持原来的顺序放到最前面,则一次“洗牌”操作后字符串变成“34A12BCD”),也可以把扑克牌分成上下两部分,把下面的部分放置到上面(如字符串“1234ABCD”,把第3 个字符到最后一个字符移到前面,变成“34ABCD12”),多次重复做这个动作,就能达到洗牌的目的,效果如图所示。

  1. (1) 若要把窗体的标题名称由“Form1”改为“字符洗牌”,应改变窗体的属性。
  2. (2) 完成上述功能的程序代码如下,请在划线处填入合适的代码。

    Private Sub Command1_Click()

     Dim r As Integer, k1 As Integer, k2 As Integer

     Dim s As String, n As Integer

         ‘从文本框TxtIn 中获取字符串

     Randomize

     r = Int(Rnd() * 10) + 1    ‘随机生成洗牌次数

     n = Len(s)

     Do While r >= 1    ‘洗牌操作

      k1 = Int(Rnd() * (n - 2)) + 2

      k2 = Int(Rnd() * (n - k1 + 1)) + k1

      s = + Mid(s, 1, k1 - 1) + Mid(s, k2 + 1, n - k2)

      r = r - 1

     Loop

     = s       ‘输出结果

    End Sub

  3. (3) 若加框处的语句改为TxtOut.Text = Str(s),则运行程序时会发生的错误消息为

用VB编写程序,在文本框Text1中输入任意字符串s,统计s中数字字符串的数值和(如输入字符串“ab123dr34fg9de”,则输出166,即123+34+9=166。),并在Label3输出结果。程序设计界面如下: 根据算法将下列程序补充完整。

  1. (1) “Command1_Click”是(A .对象名;B .事件名; C .事件处理过程名;D .方法名)
  2. (2) 根据算法将下列程序补充完整

    Private Sub Command1_Click()

    Dim s As String, ch As String

    Dim ch2 As String, sum As Double

    Dim n As Integer, i As Integer

    s = Text1.Text

    i = 1: sum = 0

    Do While i <= n

    ch = Mid(s, i, 1)

    If ch >= "0" And ch <= "9" Then

    j = i

    ch2 = Mid(s, j, 1)

    Do While ch2 >= "0" And ch2 <= "9"

        

    ch2 = Mid(s, j, 1)

    Loop

    sum = sum +  

    i = j

    End If

    i = i + 1

    Loop

    Label3.Caption = Str(sum)

    End Sub

下列程序段执行后,文本框Text 1中显示的内容是(  )

s=“QUOTES:keep on going never give up!”

flag=False:m=0

For i=1 To Len(s)

        ch=Mid(s,i,1)

        If ch>=“a” And ch<=“z” Then

          If Not flag Then

            m=m+1

            flag=True

        End If

    Else

        flag=False

    End If

Next i

Text 1.Text=Str(m)

A . 5 B . 6 C . 7 D . 21
在Visual Basic中,若x是3的倍数,则下列表达式值一定为真的是(  )
A . x/3=0 B . x*3=0 C . x Mod 3=0 D . 3-x=0
有如下VB程序段:

Dim i As Integer,sum As Integer

Dim a(1 To 6)As Integer,b(1 To 6)As Integer

Sum=0

a(6)=18:a(5)=7:b(6)=14:b(5)=16

For i=4 To 1 Step-1

  a(i)=a(i+2)-a(i+1)

  b(i)= b(i+2)-a(i)

  If b(i)Mod 3=0 Then sum=sum+b(i)

Next i

Text1.Text=Sir(sum)

该程序段运行后,文本框Text 1中显示的内容是(  )

A . 39 B . 30 C . -9 D . 12
   复合数据类型则由简单数据类型组成。如
在文本框Text1中输入n,生成一个n*n的矩阵。矩阵各元素的值均为0或1,第1个元素的值随机生成,垂直和水平方向相邻元素值均不同。程序运行的界面及实现该过程的VB程序段如下所示:

n = Val(Text1.Text)

m =             

s = “ ”

For i = 1 To n * n

  s = s + Str(m)

  m = 1- m

  If i Mod n = 0 Then

    List1.AddItem s

 s = “ ”

 If             Then m = 1- m

  End If

Next i

实现该功能,则上述程序段横横线处的表达式分别为(    )

A . ①Int(Rnd) ②n Mod 2 = 0 B . ①Int(Rnd) ②n Mod 2 = 1 C . ①Int(Rnd+0.5) ②n Mod 2 = 0 D . ①Int(Rnd+0.5) ②n Mod 2 = 1
若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是(   )
A . A%2==1 B . not(A%2==0) C . A%2 !=0 D . A%2
下面哪个不是Python合法的标识符(    )
A . int_3 B . print C . count D . __name__
逻辑表达式x mod 2=1 and (y mod 2=0 or x\10 >y )结果为True时,x,y值可能是(    )
A . x=39 y=5 B . x=28 y=4 C . x=86 y=3 D . x=53 y=4
已知a=-2,b=5,c=8,下列表达式的值为False的是(    )
A . a+b>b-c And a-c<a-b B . a+c>b-c or Not b<c C . a<c\b Or b>c And a<c D . c mod a<a-b
VB表达式 3 + 18 \ 6 / 2 mod 2 * 2 的值是(    )
A . 5 B . 4.5 C . 3 D . 6
VB表达式14 mod 14 \ 3 + -3 ^2的值是(   )
A . -9 B . -7 C . 9 D . 11
下列表达式的值为False的是(    )
A . 8%3==6//3 B . not(8+3<8-3) C . 2**3+1==7 D . 10/3!5
以下VB程序段的功能是:从文本框Text1和Text2中分别读入正整数n和r(2≤r<10),

把n转化为r进制并显示在标签Label1上。

s = ""

n = Val(Text1.Text)

r = Val(Text2.Text)

Do While n > 0

   

Loop

Label1.Caption = s

方框中的代码由以下三部分组成:

① n = n \ r     ② t = n Mod r    ③ s = Chr(Asc("0") + t) + s

下列选项中代码顺序正确的是(    )

A . ①②③ B . ②①③ C . ①③② D . ③①②
表达式2+4*5%3 ** 2的值为(    )
A . 22 B . 8 C . 6 D . 4
已知a、b、c是整型变量,且a=2,b=8,执行下列Python程序段后,a、b、c的值是(   )

c=b-a

a=a+c

b=b-c

A . 2;8;6 B . 8;2;6 C . 2;6;8 D . 6;8;2
VB表达式3^2*6Mod24\2*3的值是(      )
A . 2 B . 1 C . 4 D . 3
有如下VB程序段:

Dim a(1 To 6) As Long, i As Integer, x As Long, y As Long

x = 654321

For i = 1 To 6

    a(i) = x Mod 10

    x = x \ 10

    y = y + a(i) * 10 ^ (6 - i + 1)

Next i

执行该程序段后,变量y的值为(  )

A . 123456 B . 1234560 C . 6543210 D . 654321
最近更新