算法的控制结构 知识点题库

有下列VB程序段,程序运行结束后,变量i,Sum,t的值是(   )

i = 1: Sum = 0: t = 0

Do While i <= 10

If i Mod 3 = 0 Then

Sum = Sum + i

Else

t = t + 1

End If

i = i + 1

Loop

A . Sum=18,i=10 B . Sum=18,i=11 C . Sum=37,t=3 D . i=10,t=7
100个学生的期末成绩存储在数据库中,并已经按学号升序排序,学号编号从1到100。现要求找出成绩最高的学生的得分。如果有多个符合要求的学生,只输出学号排在前面的。小吴为此编写了VB程序,程序运行时,单击按钮Command1后,在文本框Text1中输出最大成绩。实现上述功能的VB代码如下,请补全代码

Dim a(1 To 100) As Single '依次存储100个学生成绩

Const n = 100

Private Sub Form_Load()

'本过程从数据库中读取1到100号学生成绩,并存储在数组a中

'代码略

End Sub

Private Sub Command1_Click()

Dim i As Integer, max As single

max =    ①      

For i = 2 To n

   if              ②                       

Next i

Text1.Text = "成绩最高分是:" + Str(max)

End Sub

  1. (1) 程序中①画线处应填入
  2. (2) 程序中②画线处应填入
某算法流程图如图所示,该算法实现的功能为(   )

A . 交换x,y两数的值 B . 求x,y两数最大值 C . 求x,y两数最小值 D . 以上都不对
有如下VB程序段:

X = 5:Y = Len(“2.345”)

If  X > Y  Then

   Label1.Caption = “再见!”

Else

Label1.Caption = “你好!”

EndIf

该程序段运行后,在标签Label1上显示的是

猜数游戏的过程如下:

①接收用户输入  ②比较用户的输入和待猜数是否相等,相等则输出“猜对”,否则转向①继续执行,直到猜对为止。能表示此过程的流程图是(    )

A . B . C . D .
先用键盘输入一个加数a,再输入第二个加数b,计算两数之和c,最后输出c。
  1. (1) 以上这段算法的描述所采用的描述方法是___          ____。
  2. (2) 请用流程图来描述。把流程图画在下面
某算法的部分流程图如图所示,执行这部分流程,则“s≤100?”被执行的次数是(  )

A . 2 B . 3 C . 4 D . 5
小容想设计一个自己的网页,在配色时发现网页使用的颜色是用十六进制表示的,但她习惯使用了十进制RGB颜色模式,学习了VB应用程序开发后,她想通过程序实现十进制到十六进制的转换。实现如下功能:在文本框Text1中输入RGB颜色的十进制,每个值以逗号结束,单击“转换”按钮Command1,在文本框Text2中显示颜色的十六进制值。运行效果如图所示:

  1. (1) 若要将窗体Form1的标题修改为“颜色转换”,则应修改Form1对象的 属性。
  2. (2) 以下程序段运行时,为了实现上述功能,请在划线处填入合适代码。

    Private Sub Command1_Click()

      Const st = "0123456789ABCDEF"

      Dim s, ch, rs As String

      Dim m, r1, r2, n As Integer

     

      For i = 1 To Len(s)

        ch = Mid(s,i,1)

        If ch > "9" Or ch < "0" Then

           

            r2 = m Mod 16

            rs = rs + Mid(st, r1 + 1, 1) + Mid(st, r2 + 1, 1)

            m = 0

        Else

            m = m * 10 + Val(ch)

        End If

      Next i

      Text2.Text = "#" + rs

    End Sub

  3. (3) 若黄色是由红色和绿色混合得到,则输入黄色的RGB值,文本框Text2中显示的内容为
有如下程序,要使Label1中显示的值是30,划线处应该填(  )

Dim i As Integer,s As Integer

s=0

For i=2 To ________ Step 2

  s=s+i

Next i

Label1.Caption=Str(s)

A . 8 B . 9 C . 10 D . 12
现要求刚好输出1至100内所有能被7整除的数字,下列哪段程序不能实现(  )
A . For i = 1 To 100 If i Mod 7 = 0 Then   List1.AddItem i Next i B . For i = 7 To 100 Step 7   List1.AddItem i Next i C . i = 1: s = 7 Do While s <= 100   List1.AddItem s   i = i + 1   s = i * 7 Loop D . s = 0 Do While s <= 100   s = s + 7   List1.AddItem s Loop
阅读下面的程序:

Private Sub Command1_Click()

 a=Val(Text1.text)

 b=Val(Text2.text)

 Do While a Mod b<>0

r=a Mod b

a=b

  b=r

Loop

Text3.text=str(b)

End Sub

在Text1、Text2中分别输入30、6,则Text3中的值为(  )

A . 1 B . 3 C . 6 D . 9
阅读如下程序段,程序运行结束时,k和s的值分别是(  )

k=0:s=0

Do While k<=10

s=s+1

k=k+1

Loop

A . k=10,s=10 B . k=10,s=11 C . k=11,s=10 D . k=11,s=11
有如下 VB 程序段

Private Sub Command1_Click()

Dim a(1 To 6) As Integer

Dim d(1 To 6) As Integer

a(1) = 28: a(2) = 21: a(3) = 30: a(4) = 11: a(5) = 12: a(6) = 29

Const n = 6

Max = 0

For i = 1 To n

    d(i) = 0

    For j = 1 To i - 1

     If a(j) < a(i) Then d(i) = d(i) + 1

    Next j

    If d(i) > Max Then Max = d(i)

Next i

End Sub

执行完以上程序后,Max的值为(  )

A . 5 B . 2 C . 3 D . 4
请分析以下Visual Basic 程序段,该段程序运行显示结果(即b的值)是(  )

A . 8 B . 13 C . 15 D . 40
已知S=1+2+3+……+N,找出一个最大数N,使得S<3000。编写程序,解决此问题,最合适的程序结构是(  )。
A . 循环结构 B . 树形结构 C . 顺序结构 D . 选择结构
以下流程图描述的算法执行结果是(    )。

A . 6 B . 5 C . 4 D . 36
一个正整数x,如果它的平方数的最后几位数字和这个数相等,则该数为同构数。例如:5的平方数是25,且5出现在25的右侧,那么5就是一个同构数。设计程序,输出1000-9999间的同构数x,并统计个数。
  1. (1) 本题适用的算法是和此算法的基本结构是(    )。
    A . 查找算法,循环中嵌套分支 B . 枚举算法,循环中嵌套分支 C . 查找算法,循环中嵌套循环 D . 枚举算法,循环中嵌套循环
  2. (2) 判断1000-9999范围内的整数x是同构数的条件是(     )。
    A . x=x mod 1000 B . x=x^2 mod 1000 C . x=x mod 10000 D . x=x^2 mod 10000
  3. (3) 编写程序,实现算法功能。
空气污染指数(API)值不超过50,说明空气质量为优。下图是根据API值判断空气质量情况的部分流程图,如果输入的API值为55,则该流程的执行顺序为:(    )

 

A . ①→②→③ B . ①→②→④ C . ①→②→④→③ D . ①→②→③→④
请画出双分支结构流程图。
程序的基本控制结构有 。