3.2 数据与结构 知识点题库

【加试题】有一组数据23、12、56、34、10分别存放在一组变量数组a(1)-a(5)中,以下程序执行后,i的值是(   )

Dim a(1 To 5) As Integer

Dim f As Boolean

a(1) = 23: a(2) = 12: a(3) = 56: a(4) = 34: a(5) = 10

i = 1: f = True

Do While i <= 5 And f = True

  If a(i) = 56 Then f = False

  i = i + 1

Loop

Label1.Caption = i

A . 6 B . 3 C . 4 D . 5
在程序运行过程中其值可以被改变的量称为常量。
某排序算法的VB程序段如下:

For i = 1 To 2

For j = 1 To 6 - 2 * i

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

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

End If

Next j Next i

数组元素a(1)~a(6)的初始值依次为“15,13,44,38,26,7”,执行该程序段后,数组a元素的值分别为(   )

A . 44,38,26,13,15,7 B . 44,7,26,13,15,38 C . 15,38,26,13,44,7 D . 44,38,26,15,13,7
布尔型变量的默认值是(  )
A . 0 B . -1 C . FALSE D . TRUE
以下的变量名合法的是(  )。
A . sqr B . 2pai C . cj1 D . a+b
某学校要对班主任进行满意度调查,有20个评分项(为方便程序处理,评分项具体的名称本题中不显示,仅以序号代替),每个评分项学生可以打A、B、C 三个等级中的一个,现在已经收集所有学生对班主任的评价,为了保证隐私,不显示学生姓名,只显示班级,并存储在数据库的表中,点击command2(读取数据),读取原始数据显示在左侧list1中,左侧列表显示的原始评价数据第一条表示高二(01)班有1位同学在第9项给班主任打A,依次类推,点击command1(统计),统计出各项目的评价统计(A+B所占的百分比)。

  1. (1) 根据以下代码可知,本程序访问的数据库名称是
  2. (2) 完成划线处的代码填空:

    Dim classname(1 To 8000) As String     ‘存储原始数据中的班级名称

    Dim selectabc(1 To 8000) As String       ‘存储原始数据选项的值

    Dim xiangmu(1 To 8000) As String        ‘存储原始数据选项的序号

    Dim n  As Integer

    Private Sub Command2_Click()        ‘从数据库读取数据,并且按班级名称排序

    Dim conn As New ADODB.Connection

    conn.ConnectionString = "provider=microsoft.ace.oledb.12.0;data source="&App.Path&"\pingjia.accdb"

    conn.Open

    Dim rs As New ADODB.Recordset

    Set rs.ActiveConnection = conn

    rs.Open "select * from data"

    n = 0       ‘记录评价的总条数

    '读取数据,并按班级排序,代码略

    End Sub

    Private Sub Command1_Click()

    Dim cstart(1 To 50) As Integer       ‘存储每个班级在数组classname中的起始位置

    Dim cend(1 To 50) As Integer       ‘存储每个班级在数组classname中的末尾位置

    Dim k As Integer       ‘存储班级数量

    Dim testall(1 To 20) As Integer        ‘存储每一项总选择人数,例如testall(1)里存储这评价项目1里的总人数,testc(1)里存储评价项目1里选C的人数

    Dim testc(1 To 20) As Integer          ‘存储每一题(项)选c的人数

    ‘确定每个班级的起止位置,存储到cstart数组和cend数组

    cstart(1) = 1

    temp = classname(1)

    k = 1

    For i = 1 To n

      If classname(i) <> temp Then

        

           k = k + 1

           cstart(k) = i

           temp = classname(i)

      End If

    Next i

    cend(k) = n

     For i = 1 To k    ‘每个班级分别统计评价项目

       

       For q = 1 To 20    ‘对testall和testc数组初始化,

         testall(q) = 0

         testc(q) = 0

       Next q

       For j = cstart(i) To cend(i)    ‘对第i个班级进行统计

          testall(xiangmu(j)) = testall(xiangmu(j)) + 1

          If selectabc(j) = "C" Then 

       Next j

       For p = 1 To 20    ‘统计完成后输出这个班级的20个项目的A+B所占百分比

          s = s &""&Str(Round((testall(p) - testc(p)) / testall(p) * 100, 1))

       Next p

       List2.AddItem s

     Next i

    End Sub

在数组a中,数据的存放情况如下表,当i = 8时,a[i mod 3]的值为

下面是小新在某道编程题中定义的变量,哪个变量名是不合法的(    )
A . apple_Prince3 B . _math C . 3apple D . Apple
对给定的若干种互不相同的钱币面值,编程计算最少需要多少张钱币才能凑成某个给定的钱数。给定的7种钱币面值分别为1,2,5,10,20,50,100,则凑成金额94元,需要50元一张,20元两张,2元两张,共5张纸币时,张数最少。

程序界面如图所示。

实现上述功能的VB程序如下,请在画线处填入合适的代码。

Dim a(1 To 7)As Integer

Dim b(1 To 7)As Integer

Private Sub Form_Load( )

  List1.AddItem "面值    张数"

  ‘在数组a中从小到大存储7种钱币面值的整数值

End Sub

Private Sub Command1_Click( )

  Dim n, num, k As Integer

  n=Val(Text1.Text)

  k=7

  Do While n>0

    If n>=a(k)Then

         ①   

      b(k)=b(k)+1

    Else

         ②   

    End If

  Loop

  For i=1 To 7

    If b(i)<>0 Then

        num=num+b(i)

        List1.AddItem Str(a(i))+"   "+Str(b(i))

    End If

  Next i

  List1.Addltem"最少"+Str(num)+"  张"

End Sub

以上程序段运行时,为了实现上述功能,画线处应填入的代码分别为:①;②

str( )属于的数据类型(   )
A . 字符型 B . 整型 C . 浮点型 D . A,B,C全错
Python中的数据类型float表示(    )
A . 布尔型 B . 整型 C . 字符串型 D . 浮点型
请写出布尔型数据和数值型数据相互转化的规则。
小王编写了“字符串缩写”程序,实现如下功能:

1)输入一串由英文字母和数字组成的字符串,

2)如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上“ — ”和最后一个字符组成的新字符段,

3)例如:字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。

程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:

实现上述功能的程序如下,请在程序划线处填入合适的代码。

s=input("请输入字符串s:")

flag = False

result=" "

for i in range( 0 , k-1):

  if  :

    result=result+s[i]+"-"

    flag = True

  elif ord(s[i]) ! = ord(s[i+1])-1:

    result=result+s[i]

   

    result=result + s[i+1]

print("缩写后的字符串为:",result)

某用户预订了商品编号为“ID2315937”、单价为20元、数量为2,可将这3个不同类型的简单数据组织成一个复合数据类型元组。记作:BookInfo1=("ID2315937",20,2),下列选择正确的是(      )
A . BookInfo1[1]的值是"ID2315937" B . BookInfo1[1]*BookInfo1[2]的值为40 C . BookInfo1(1)的值是20 D . len(BookInfo1)的值为4,len(BookInfo1[2])的值为1
关于栈,下列说法错误的是(      )
A . 栈是先进后出(FILO)表。它的数据元素只能在同一端(称为栈顶)进行操作,添加(进栈),删除(出栈) B . pop(0)方法可以删除列表的尾元素(相当于栈的“出栈”操作) C . pop()方法可以删除列表的尾元素(相当于栈的“出栈”操作) D . append方法可以在列表尾部添加一个数据元素(相当于栈的“入栈”操作)
小张编写程序,实现把数据temp插入到升序序列中,得到一个新的升序序列,原升序序列各元素已依次存放在数组元素a(1),a(2),a(3),……,a(n)中。他编写的VB程序段如下:

If temp>=a(n) Then

    a(n+1)=temp

Else

    j=n

    Do While j>=l And temp<a(j)

       

        j=j-1

    Loop

    

End If

要使程序实现上述功能,则方框①②中的语句分别是(    )

A . a(j+1)=a(j)a(j+1)=temp B . a(j)=a(j-1)a(j+1)=temp C . a(j+1)=a(j)a(j)=temp D . a(j)=a(j-1)a(j)=temp
请把程序补充完整

age=float(input('请输入age='))     #输入年龄

=float(input('请输入HRrest='))      #输入安静心率

low=(220-age-HRrest)*0.6+ HRrest     #计算最适宜运动心率低值

high=(220-age-HRrest)*0.8+HRrest     #计算最适宜运动心率高值

print("最适宜的心率是:",low,"~",high)

input("运行完毕,请按回车键退出...")

小平打算用python编写一个管理班上同学通讯录的程序,如果用一个变量A来对应处理同学们的电话号码,这个变量A定义成什么数据类型比较适合?(     )。
A . 布尔型 B . 浮点型 C . 整型 D . 字符串
以下四种描述中,错误的是(   )。
A . 常量在程序执行期间其值不会发生变化     B . 根据数据类型不同,常量可分为字符型常量、日期型常量、数值常量和布尔常量      C . 符合常量是用一个标识符代表一个常数,好像是为常数取一个名字,但仍保持常数的性质 D . 符号常量的使用和变量的使用没有差别。
请填一下以下内容。

结构类型

数据(节点)之间的关系

生活中相应结构应用举例

队列(线性)

最近更新