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

下列VB程序运行后,变量x的值为(   ).

       x=5

Print x+7

Print x+2

A . 5 B . 12 C . 7 D . 14
以下不能作为Visual Basic变量名的是(   )。(多选)  
A . EI B . E12 C . 12-E D . E-12 E . 12.5
下列VB表达式中,计算结果为3的是(   )
A . Abs(-3.2) B . Len("a_8") C . Sqr(3)+1 D . Int(2.9)
编写“鞋码换算”程序,实现如下功能:在文本框 Text1 中输入脚长 n(单位:厘米),单击 “换算”按钮 Command1,在标签 Label1 中显示相应鞋码,同时在列表框 List1 中显示与脚长对应的标准鞋码表。程序运行界面如图所示。

  1. (1) 如图所示,能生成运行界面中列表框的控件是(

  2. (2) 实现上述功能的VB程序如下,请在划线处填写合适的代码。

    Private Sub Command1_Click()

    Dim n As Single, i As Integer, c As Integer

    List1.Clear

    n = Val(Text1.Text)

    If n - Int(n) > 0.5 Then

    n = Int(n)+1      ‘n 小数部分大于 0.5 的加 1,0.5 及以下的加 0.5

      Else

          

    End If

    c = n * 2 - 10

    Label1.Caption = "适合你的鞋码为:" + Str(c)

    For i = 22.5  To n+2   step 0.5

    If Int(i) = i Then

    List1.AddItem Str(i) + "   " + Str(c)

    Else

    List1.AddItem Str(i) + "   " + Str(c)

    End If

    Next i

    End Sub

  3. (3) 若小容的脚长为23.3,则适合她的标准鞋码为
下列VB表达式的值为2019的是(  )
A . Len(“2018”)+1 B . Val(“2018”+“1”) C . Abs(Int(-20188)) D . Int(Rnd*2019)
小李在探究将两段已按从小到大排序的数据连接后用冒泡排序思想再进行从小到大排序的情况,编写了一个VB程序,功能如下:在列表框List1中显示排序前数据(存储在数组c中),单击“排序”按钮Command1后,在列表框List2中显示排序后的数据。

  1. (1) 在设计如图a所示的程序界面时,应使用图b所示“控件工具箱”中的(填写相应编号)添加列表框List1。
  2. (2) 语句“Flag=True”放置在(单选,填字母:A/B/C)位置。
  3. (3) 程序代码中,加框处语句有错,请改正。
  4. (4) 在划线处补充完成程序代码。

    Const n1 = 6     ‘ 第1段已排序数据长度为n1

    Const r2 = 5     ‘ 第2段已排序数据长度为n2

    Dim c (1 To n1 + n2) As Integer     ‘ 数组c长度为n1+n2,依次存储第1、2段数据

    Private sub Command1_Click ( )

    ‘ 数组c依次存储两段已按从小到大排序的数据,并在列表框List1中显示’

    ‘ 代码略

    List2. Clear

    ‘ A位置

    For i = n1+1 To n1 + n2

       

    ‘B位置

        Do While j > 1 and Flag

        If         ①          Then

            t = c(j): c(j) = c(j-1): c(j-1) = t

    ‘ C位置

        Else

            Flag = False

        End If

                ②         

        Loop

    Next i

    For i = 1 To n1 + n2

        List2. AddItem c(i)

    Next i

    End sub

     ② 

十进制数转换为二进制数的算法流程图如下图所示,当输入十进制数63时,改流程图中循环体执行的次数为(  )

A . 4 B . 5 C . 6 D . 7
有如下VB程序段

Const n=9

k = 1

For i = 1 To (n + 1) / 2 - 1

  For j = 1 To n - i * 2

    If a(j) * k < a(j + 2) * k Then

      t = a(j): a(j) = a(j + 2): a(j + 2) = t

    End If

    k = -k

  Next j

Next i

For i = 1 To (n + 1) \ 2

  List2.AddItem Str(a(2 * i - 1))

Next i

已知数组元素 a(1)~a(9)分别是8、6、2、9、6、3、8、11、5,执行程序后list2输出的结果分别是(  )

A . 2  5  6  8  8 B .  8  8  6  5  2 C . 6  8  5  8  2 D .  2  6  6  8  9
在VB中,以下关于变量定义错误的是(  )。
A . Dim a As Integer B . Public a As String C . Private a As Boolean D . Din a Integer
有一个有趣的仓鼠繁殖问题:第一个月买来1对仓鼠,2个月后会生1对小仓鼠,以后灭个月都会生1对小仓鼠;而生下来的仓鼠,也会从第二个月开始每月生1对小仓鼠,以此类推。试问一年后,仓鼠的总数达到多少?

分析问题得出出生月份与仓鼠对数关系图

由表可知仓鼠的繁殖规律:从第3个月开始,以后每个月的仓鼠对数都是前2个月仓鼠对数之和。解决上述问题的Visual Basic 程序如下:

Dim i As Integer

Dim a(1 To 20) As Integer

a(1)=1 : a(2)=1

for   ① 

  a(i)=  ②  

Next i

Text1. Text=Str(a(n))

程序中画线部分①②应 填入 的语句或表达式为(  )

A . ①i=0 To 12   ②a(i-1)+a(i-2) B . ①i=3 To 12   ②a(i-1)+a(i-2) C . ①i=3 To 12   ②a(i+1)+a(i+2) D . ①i=0 To 12   ②a(i+1)+a(i-2)
VB程序中“Dim  n  As  Integer”这条语句的作用是(     )
A . 定义一个变量 B . 定义一个数据处理方法 C . 定义一个数据输入方法 D . 定义一个事件过程
已知k为十进制多位整数,下列选项中能正确表示含义“若k的十位是偶数则a为1,否则a为2”的是(    )
A . a=1: if k mod 2<>0 then a=2 B . a=2: if k mod 100 \2 <>0 then a=1 C . If k\100 mod 2 <>0 then a=2 else a=1 D . if k\10 mod 2 =0 then a=1 else a=2
有如下VB程序段:

For i = 1 To 6

    a(i)= Int(Rnd*6)+ 1

Next i

For i = 1 To 6

    b(a(i))= b(a(i))+ 1

Next i

c(1)= 1

For i = 2 To 6

    c(i)= c(i - 1)+ b(i - 1)

Next i

数组b各元素的初值均为0,执行该程序后,则数组c各元素的值不可能是(    )

A . 1 2 5 5 6 7 B . 1 1 3 5 6 7 C . 1 3 4 4 7 8 D . 1 2 4 5 5 6
下列表达式的值为True的是(    )
A . 3==1 B . 3>2>2 C . 1==1 or 2!=2 D . not(1==1and 0!=1)
在以下运算符中,优先级最高的运算符是(     )
A . not B . > C . ** D . //
VB表达式Int(Rnd* 10)+54>9/3的值可能是(    )
A . 18 B . 12 C . 28 D . 11
能去除字符串中空格的方法是(     )
A . lstrip( ) B . upper() C . startswith( ) D . ljust( )
表达式:[3] in [1,2,3,4]  的值是
VB表达式2017 Mod 60 \6的运行结果是(   )
A . 6 B . 7 C . 8 D . True
有如下 Python 程序段:

import random

a = [8,6,1,3,2,9]

k = random.randint(1,3)

for i in range(k,k+2):

  if a[i]<a[i-1]:

    a[i],a[i-1]=a[i-1],a[i]

执行该程序段后,a 对象的内容不可能是(      )

A . [6, 1, 8, 3, 2, 9] B . [8, 6, 1, 2, 3, 9] C . [8, 1, 3, 6, 2, 9] D . [6, 9, 1, 3, 2, 8]
最近更新