阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。【说明8.1】以下程序的功能是:生成20个200~300之间的随机整数,输出其中能被5整除的数并求出它们的和。【程序代码8.1】Private Sub Command1_Click()For i=1 To 20x=Int((1)*200+100)If (2)=0 ThenPrint xS=S+ (3)End IfNext iPrint"Sum=";SEnd Sub【说明8.2】程序8.2运行后,单击窗体,则在窗体上显示

题目

阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。

【说明8.1】

以下程序的功能是:生成20个200~300之间的随机整数,输出其中能被5整除的数并求出它们的和。

【程序代码8.1】

Private Sub Command1_Click()

For i=1 To 20

x=Int((1)*200+100)

If (2)=0 Then

Print x

S=S+ (3)

End If

Next i

Print"Sum=";S

End Sub

【说明8.2】

程序8.2运行后,单击窗体,则在窗体上显示的内容是:a=(4)和b=(5)。

【程序代码8.2】

Private Sub Form_Click()

Dim a As Integer,b As Integer

a=20:b=50

p1 a,b

p2 a,b

p3 a,b

Print"a=";a,"b=";b

End Sub

Sub p1(x As Integer, ByValy As Integer)

x=x+l0

y=y+20

End Sub

Sub p2(ByVal×As Integer, y As Integer)

x=x+l0

y=y+20

End Sub

Sub p3(ByVal×As Integer, ByVal y As Integer)

x=x+10

y=y+20

End Sub


相似考题
更多“阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。【说明8.1】以下程序的功能是:生成20个200~300之间的随机整数,输出其中能被5整除的数并求出它们的和。【程序代码8.1】Private Sub Command1_Click()For i=1 To 20x=Int((1)*200+100)If (2)=0 ThenPrint xS=S+ (3)End IfNext iPrint"Sum=";SEnd Sub【说明8.2】程序8.2运行后,单击窗体,则在窗体上显示”相关问题
  • 第1题:

    (7)在窗体上画一个命令按钮,其名称为 Command1,然后编写如下事件过程:

    Private Sub Command1_Click( )

    a$="National Computer Rank Examination"

    n=Len(a$)

    s=0

    For i=1 To n

    b$=Mid(a$, i, 1)

    If b$="n" Then

    s=s+1

    End If

    Next i

    Print s

    End Sub

    程序运行后,单击命令按钮,输出结果是 【7】 。


    正确答案:

    (7)【答案】4
    【解析】此题实际上是从左自右逐个提取a$中的字符,判断是不是等于“n”,统计其中“n”的个数。

  • 第2题:

    阅读以下说明及Visual Basic 程序代码,将应填入(n)处的字句写在对应栏内。

    [说明]

    本程序求3~100之间的所有素数(质数)并统计个数;同时将这些素数从小到大依次写入顺序文件E: \dataout.txt;素数的个数显示在窗体Form1上。

    [Visual Basic 代码]

    Private Sub Command1_ Click ( )

    Dim count as integer, flag as Boolean

    Dim t1 as Integer, t2 as Integer

    (1)

    Count=0

    For t1=3 to 100

    Flag=Tree

    For t2=2 to Int( Sqr ( t1 ) )

    If (2) Then flag=False

    Next t2

    (3)

    count=(4)

    write 1, t1

    End if

    Next t1

    (5)

    Close 1

    End Sub


    正确答案:(1) Open "e:\dataout.txt" For Output as #1 (2) t1 mod t2=0 (3) If t2>Int (sqr(t1))Then (4) count +1 (5) Form1.Print "素数个数"; count
    (1) Open "e:\dataout.txt" For Output as #1 (2) t1 mod t2=0 (3) If t2>Int (sqr(t1))Then (4) count +1 (5) Form1.Print "素数个数"; count

  • 第3题:

    阅读以下说明及Visual Basic 程序代码,将应填入(n)处的字句写在对应栏内。

    [程序5.1说明]

    下列程序运行时,当单击窗体后,从键盘输入一个字符,判断该字符是字母字符、数字字符还是其他字符,并做相应的显示。窗体上无任何控件,并禁用Ase和Chr函数,Select Case语句中禁用枚举值。

    [Visual Basic代码]

    Private Sub Form. Load ()

    Dim x As String*1

    X=(1) (“请输入单个字符”,“字符”)

    Select Case UCase ( (2) )

    Case (3)。

    Print X+“是字母字符”

    Case (4)

    Print X+ “是数字字符”

    Case Else

    Print X+“是其他字符”

    End Select

    [程序5.2说明]

    在窗体上画一个名称为Timer1的计时器和一个名称为Labe11的标签。当运行程序后,将在标签中显示当前时间的数字时钟(包括时:分:秒)。

    [Visual Basic代码]

    Private Sub Fom_Load ()

    Timer1.Interval=1000

    EndSub

    Private Sub Timer1_ timer() (5)

    EndSub


    正确答案:(1)InputBox (2)X (3)“A” To “Z” (4)“0”To“9” (5)Labe11.Caption=Time
    (1)InputBox (2)X (3)“A” To “Z” (4)“0”To“9” (5)Labe11.Caption=Time

  • 第4题:

    阅读以下说明和c++码,将应填入(n)处的字名写在的对应栏内。

    [说明] 以下函数完成求表达式

    的值,请填空使之完成此功能。

    float sum ( float x )

    { float s=0.0;

    int sign = 1;

    (1);

    for(inti=1;(2); i+ +)

    {

    t=t*x;

    s=s+(3);

    sign = - sign;

    (4);

    }


    正确答案:float t =1.0; i< =100 - sign * i/( t + sign* i) return s
    float t =1.0; i< =100 - sign * i/( t + sign* i) return s

  • 第5题:

    有下列程序: Option Base 0 Private Sub Command1_Click() Dim City As Variant x = Array("Visual","Basic","Microsoft","Programming") Print x(2) End Sub 程序运行后,单击命令按钮,则在窗体上显示的内容是

    A.Microson

    B.错误提示

    C.Visual

    D.Basic


    正确答案:A
    解析:使用Array函数创建的数组下界是由OphonBase语句指定的下界而确定的,在本题中,下界被OptionBase语句指定为0,所以x(0)的值为“Visual”,x(1)的值为“Basic”,x(2)的值为“Microsoit”,x(3)的值为“Programming”。

  • 第6题:

    阅读以下说明和C语言程序,将应填入(n)处的字句写在对应栏内。

    【说明】

    计算n的合数。一个整数n可以有多种划分,使其划分的一列整数之和为n。例如,整数5的划分为:

    5

    4 1

    3 2

    3 1 1

    2 2 1

    2 1 1 1

    1 1 1 1 1

    共有7种划分。这种划分的程序如下所示。

    【程序】

    include <stdio.h>

    int n[1000],m,k;

    void output sum()

    {

    int j;

    for(j=0;n[j]!=0;j++)

    printf("%d\t",n[j]);

    printf("\n");

    }

    void sum(int i)

    if(m-n[i]<n[i])

    { m=m-n[i];

    (1)

    i++;

    n[i+1]=0;

    }

    else

    {

    (2)

    m-=n[i];

    i++;

    }

    if(m!=n[i])

    sum(i);

    else

    output_sum();

    if(n[i]>1)

    {

    n[i]--;

    (3)

    }

    else

    {

    while((n[i]==1)&&(i>O))

    {

    i--;

    (4)

    }

    if(i!=0)

    {

    (5)

    sum(i);

    }

    }

    }

    void main()

    {

    int i;

    scanf("%d",&n[0]);

    m=k=n[0];

    for(i=1;i<=k;i++)

    n[i]=0;

    while(n[0]!=1)

    {

    n[0]--;

    i=0;

    sum(0);

    m=k;

    }

    }


    正确答案:(1)n[i+1]=m; (2)n[i+1]=n[i]; (3)sum(i); (4) m+=n[i]; (5)n[i]--;
    (1)n[i+1]=m; (2)n[i+1]=n[i]; (3)sum(i); (4) m+=n[i]; (5)n[i]--; 解析:本题考查C语言中计算n合数方法的实现。
    题目要求计算n的合数,我们首先来了解一下什么是n的合数。在正整数n的所有不同的划分中,将最大加数n1不大于m的划分个数记作q(n,m)。可以建立q(n,m)的如下递推关系。
    (1)q(n,1)=1,n1
    当最大数n1不大于1时,任何正整数只有一种划分形式,就是全1。
    (2)q(n,m)=q(n,n),mn
    最大加数n1实际上不能大于n。因此,q(1,m)=1。
    (3)q(n,n)=1+q(n,n-1)
    正整数n的划分由n1=n的划分和n1≤n-1的划分组成。
    (4)q(n,m)=q(n,m-1)+q(n-m,m),n>m>1
    正整数n的最大加数n1不大于m的划分由n1=m的划分和n1≤m-1的划分组成。要想求出所有解,只有递归到最底层即全为1为止。
    知道了上述特性,下面我们来看代码。在代码中首先声明一个数组和两个全局变量 k,m。结合程序可以看出,其中数组n[i]中存放的是当前划分的最大加数,而m中存放的是当前被划分的数。程序代码中有三个函数,一个是主函数、一个output_sum()函数和一个sum()函数,函数output_sum()的功能很简单,就是输出一次划分结果,在sum()函数中被调用。
    经过分析不难发现,函数sum()的作用是实现整数的划分。在函数体中,首先是一个条件判断语句,其作用是判断当前被划分的数m是否小于当前最大加数的两倍,如果条件成立,说明数被划分为两个数后,其最大加数大于另一个数,而另一个数应该存放在数组中。此时执行语句m=m-n[i]来求出另一个数,接下来应该是保存这个数到数组中的下个位置,第(1)空就用来完成这个任务,因此,答案为n[i+1]=m。
    第(2)空所在的位置是条件不成立的情况下运行的语句,条件不成立,说明数被划分为两个数后,其最大加数小于另一个数,数可以有更大的最大加数,因此,将当前的最大加数保存到数组中的下个位置,此空答案为n[i+1]=n[i]。
    第(3)空也在一个条件选择语句下面,此条件语句用于判断当前最大加数是否大于1,如果大于1,则需要接着划分,因此要调用函数sum(),其参数是i,所以此空答案为sum(i)。
    第(4)空是条件不成立即当前最大加数为1的情况下执行的语句,当最大加数为1时,说明递归到了最底层,此时,递归应该往回走了,这需要还原当前最大划分数m(为这个数的其他划分做准备),因此,这个空的答案为m+=n[i]。
    第(5)空是在条件i!=0为真的情况下执行的语句,如果条件为真,说明递归还没有回到最上层,应该求当前被划分数在当前最大加数变小后的其他划分情况,因此,此空答案为n[i]--。

  • 第7题:

    以下程序代码实现单击命令按钮Command1时生成20个(0,100)之间的随机整数,存于数组中,打印数组中大于50的数,并求这些数的和。

    Dim arr(1 To 20)

    For i=1 To 20

    arr(i)=【 】

    Next i

    Sum=0

    For Each X In【 】

    If X>50 Then

    Print Tab(20);X

    Sum=Sum+X

    End If

    Next X

    Print Tab(20);“Sum=”;Sum


    正确答案:Int (Rnd*99+1) arr
    Int (Rnd*99+1), arr

  • 第8题:

    阅读以下说明和Visual Basic 码,将应填入(n)处的字名写在的对应栏内

    [说明] 这是一个用户名校验程序,如用户名正确,即输出欢迎字样,否则,弹出警告窗并直接退出程序。下面是实现上述功能的程序,请填空。“Option Explicit”此语句的作用:强制显示声明

    Dim UserName (2) As String

    Dim Flag As Boolean

    (1)

    Private Sub Form. _ Load( )

    UserName (0) = "AA": UserName (1) = "BB": UserName(2) = "CC"

    Flag = False

    inputName = InputBox( “请输入名称:“,”身份确认”“,”)

    Dim i As Integer

    For i = 0 To False

    If inputName = UserName(i) Then

    (2)

    End If

    Next i

    If (3) Then

    MsgBox “用户身份确失败!退出应用”, vbOKOnly, “警告”

    End

    End If

    End Sub

    Private Sub Form_ Paint( )

    (4)

    End Sub


    正确答案:Dim inputName As String Flag = True Flag = False picShowMsg. Prin t “欢迎您!” + inputName
    Dim inputName As String Flag = True Flag = False picShowMsg. Prin t “欢迎您!” + inputName

  • 第9题:

    阅读以下应用说明及Visual Basic程序代码,将应真入______处的语句写在答题纸的对应栏内。

    [应用说明5.1]

    应用程序的窗体中有1个下拉式列表框(名称为Combol)和2个文本框(名称分别为Txt1和Txt2)。运行时,用户从Combo1的列表中进行选择,程序就会将选中条目的内容及编号(从0开始)分别在文本框Txt1和Txt2中显示出来。

    [程序代码5.1]

    Private Sub Combol_Click()

    Txt1,Text=Combol. (1)

    Txt2.Text=Combol. (2)

    End Sub

    (注意:可供(2)处选择的选项有List,Index,ListIndex,LisCount,Number)

    [应用说明5.2]

    本应用程序的运行窗口如图2-1所示。

    当用户在输入框(名为TxtIn)中输入数值数据,并从下拉式列表框(名称为CmbOp)中选择所需的运算后,输出框(名为TxtOut)中就会显示运算的结果。用户单击“清除”按钮(名为CmdClear)后,输入框和输出框都清空。

    [程序代码5.2]

    Private Sub CmbOp_Click()

    Dim DataIn As Double,DataOut as Double

    DataIn=(3)

    Select Case (4)

    Case“取整数部分”

    DataOut=Int(DataIn)

    Case“求平方根”

    If DataIn<0 Then

    MsgBox$(“负数不能开平方!”

    Else

    DataOut=Sqr(DataIn)

    End If

    Case“取绝对值”

    DataOut=Abs(DataIn)

    (5)

    TxtOut.Text=str$(DataOut)

    End Sub


    正确答案:(1)Text (2)ListIndex (3)Val(TxtIn.Text)或TxtIn.Text (4)CmbOp.Text (5)End Select
    (1)Text (2)ListIndex (3)Val(TxtIn.Text)或TxtIn.Text (4)CmbOp.Text (5)End Select 解析:组合框(Combo Box)是组合列表框和文本框的特性而成的控件。它的Text属性值是用户所选择的项目的文本或直接从编辑区输入的文本。它的ListIndex属性值为选中条目的编号。
    文本框的Text属性用来设置本框中的显示的内容。
    在VB中,情况语句的一般格式为:
    Select Case测试表达式
    Case表达式表列1
    [语句块1]
    [Case表达式表列2
    [语句块2]]
    ...
    [Case Else
    [语句块n]]
    End Select

  • 第10题:

    运行下列程序:

    Private Sub Form_Click( )

    For i = 1 To 20

    If fun1(i) Then

    s = s + 1

    End If

    Next i

    Print s

    End Sub

    Private Function fun1(y) As Boolean

    If y Mod 2 <> 0 Then

    fun1 = False

    Else

    fun1 = True

    End If

    End Function

    单击窗体后,则在窗体上显示的结果是( )。

    A.110

    B.10

    C.0

    D.20


    正确答案:B

  • 第11题:

    根据条件,回答 46~48 题: 以下程序的功能是:生成20个200到300之间的随机整数,输出其中能被5整除的数并求出它们的和。请填空。

    第46题:请填写【1】处答案 。


    正确答案:
    Rnd或Rnd(n),其中n为任意整数

  • 第12题:

    试题三(共 15 分)

    阅读以下说明和 C 程序,将应填入 (n) 处的字句写在答题纸的对应栏内。


    正确答案:

  • 第13题:

    下面程序的功能是单击窗体时在消息框中输出1000以内能同时被3、5和7整除的整数。请在‘空白处填入适当语句将程序补充完整。

    Private Sub Form_Click()

    sum=0

    For i=1 To 1000

    If______Then

    sum=sum+i

    End If

    Next i

    MsgBox sum

    End Sub


    正确答案:I Mod 3=0 And i Mod 5=0And i Mod 7=0
    I Mod 3=0 And i Mod 5=0And i Mod 7=0 解析:本题考查VBA中书写条件表达式的知识。本题需要补充完整的空白处恰好就是这个程序的关键所在,也就是如何判断i能同时被3、5和7整除。判断整除我们一般使用两个数相除求余数,然后通过判断余数是否为0来实现。由于需要同时被3、5和7整除,所以三个判断的表达式之间应该是“与”的关系,最终结果为i Mod 3= 0 And i Mod 5=0 And i Mod 7=0。

  • 第14题:

    阅读以下说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。

    【说明】

    以下程序为求行列式X(5,5)的值S。

    【Visual Basic代码】

    Private Function col ( byval x ( 5,5 ) as integer ) as long

    dim fesult as long

    dim temp as long

    dim I as integer

    dim j as integer

    dim k as imeger

    result = 0

    for I = to 5

    (1)

    for j = 1 to 5

    if I+j>6 then

    k= ( 1+j ) mod 5

    else

    k=1

    endif

    temp=temp*x ( k,j )

    (2)

    result=(3)

    (4)

    (5)

    End function


    正确答案:(1)temp=1 (2) next I (3) result+temp (4) next I (5) col=result
    (1)temp=1 (2) next I (3) result+temp (4) next I (5) col=result

  • 第15题:

    阅读下列说明和Visual Basic代码,将应填入(n)处的字句写在对应栏内。

    [说明]

    某小型家电超市开发了下面的程序,用以实现商品提货信息的汇总和输出功能。程序的运行界面如下图所示:

    程序界面包含两个控件数组,分别是提货商品复选框控件数组Check1以及提货数量文本框控件数组Text1(相同下标的复选框和文本框相对应),提货清单的显示由List控件实现,按钮“打印清单”和“清除”分别名为Command1和Command2。

    [Visual Basic代码]

    ’提货商品复选框的单击事件响应代码

    Private Sub Check1_Click(Index As Integer)

    If Check1 (Index). Value = 1 Then (1). SetFocus

    End Sub

    ’按钮“打印清单”的单击事件响应代码

    Private Sub Command1_Click()

    Dim i, n, price As Integer, sum As Long, title As String

    sum = 0

    For i = O To 4

    Select Case i

    Case 0: title ="电视机": price = 3580

    Case 1: title ="微波炉": price = 660

    Case 2: title ="电冰箱": price = 1850

    Case 3: title ="DVD": price = 2880

    Case 4: title ="空调": price = 2500

    End Select

    If (2)= 1 And Textl(i). Text < > " " Then

    (3) title & Text1(i).Text & "台"

    n = n + Val(Textl(i))

    sum =(4)

    End If

    Next i

    If sum < > 0 Then

    (3) "共:" & n &"台," &"合计金额:"& sum &"元。"

    End If

    End Sub

    ’按钮“清除”的单击事件响应代码

    Private Sub Command2_Click()

    (5)

    End Sub


    正确答案:(1) Teat1(Index) (2) Check1(i). Value (3) List1.AddItem (4) sum+Val(Text1(i)) * price (5) List1.Clear
    (1) Teat1(Index) (2) Check1(i). Value (3) List1.AddItem (4) sum+Val(Text1(i)) * price (5) List1.Clear 解析:(1)当用户选择某种商品后,焦点应落在对应的数量文本框内;
    (2)for循环遍历所有商品,如果商品被选中并且数量不空,则进行累计;
    (3)向List控件对象中添加内容应使用AddItem方法;
    (4)累加总金额;
    (5)清除List控件对象中的内容应使用Clear方法。

  • 第16题:

    阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。

    【说明】

    已知窗体上有两个名为cmdGene和cmdSort的命令按钮。单击cmdCene按钮时,随机产生10个[1,100]范围内的整数并将它们放在数组intA中;单击cmdSort按钮时,用选择法排序这10个数并输出。

    【程序代码】

    Dim intA(1 To 10)As integer

    Private Sub cmdGene_Click( )

    Dim intl As Integer

    Randomize

    For intl = 1 To 10

    intA(intl) =(1)

    Next intl

    End Sub

    Private Sub cmdSort_Click( )

    Dim intl, intJ,intMin, intTemp As Integer

    For intl = 1 To 9

    intMin = intA(intl)

    For intJ=(2) To 10

    If intA(intJ) < intMin Then

    Temp = intA(intJ)

    intA(intJ)=(3)

    intMin = intTemp

    End If

    Next intJ

    (4)

    (5)

    For intl = 1 To 10

    Print Str(intA(intl))+" ";

    Next intl

    Next lntl

    Print

    End Sub


    正确答案:(1)1+int(rnd*100) (2)intI+1 (3)intMin (4)intA(intI)=intMin (5)Next intI
    (1)1+int(rnd*100) (2)intI+1 (3)intMin (4)intA(intI)=intMin (5)Next intI 解析:根据题意,第一个空应该是产生10个[1,100]范围内的随机整数,因此填“1+int(rnd*100)”。
    选择排序思想是:第i趟排序开始时,当前有序区和无序区分别为 R[1..i-1]和R[i..n](1≤i≤n-1),该趟排序则是从当前无序区中选出关键字最小的记录R[k],将它与无序区的第1个记录R[i]交换,使R[1..i]和R[i+1..n)分别变为新的有序区和新的无序区。因为每趟排序均使有序区中增加了一个记录,且有序区中的记录关键字均不大于无序区中记录的关键字,即第i趟排序之后R[1..i].keys≤R[i +1..n].keys,所以进行n-1趟排序之后有R[1..n-1].keys≤R[n]. key。也就是说,经过n-1趟排序之后,整个文件R[1..n]递增有序。因此(2)空填“intI+1”;If intA(intJ)intMin Then后的3条语句是实现数intA(intJ)与intMin的交换,因此(3)空填“intMin”;(4)空是实现最小数与无序区的第1个数交换,因此填“intA(intI)=intMin”;(5)空是循环结束语句,填“Next intI”。

  • 第17题:

    阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。

    【说明】

    在下面函数横线处填上适当的字句,使其输出结果为:

    构造函数.

    构造函数.

    1,2

    5,6

    析构函数

    析构函数.

    【C++代码】

    include "iostream.h"

    class AA

    { public;

    AA(int i,int j)

    {A=i; B=j;

    cout<<"构造函数.\n";

    }

    ~AA(){(1);}

    void print();

    private:

    int A, B;

    };

    void AA∷print()

    {cout<<A<<","<<B<<endl;}

    void main()

    {

    AA *a1, *a2;

    (2)=new AA(1, 2);

    a2=new AA(5, 6);

    (3);

    a2->print();

    (4) a1;

    (5) a2;

    }


    正确答案:(1)cout"析构函数.\n" (2)a1 (3)a1—>print() (4)delete (5)delete
    (1)cout"析构函数.\n" (2)a1 (3)a1—>print() (4)delete (5)delete 解析:本题考查用C++语言对输出的实现。
    题目中没有什么条件,只给出了输出结构,要求程序能实现这个输出。下面来具体分析代码。
    第(1)空很明显是类AA的析构函数的函数体,类的析构函数一般在撤销一个对象时调用,根据题目的要求,要输出析构函数这样的结果,而在程序中没有与此相关的操作,那么此空应该是用来实现这个功能的,借鉴构造函数中的内容,我们很容易就得出此空答案为cout"析构函数.\n"。
    第(2)空在主函数中,很明显此空所在的语句是创建一个AA类的对象,并让一个AA型的指针变量指向这个对象。在函数开始的时候声明了两个AA型的指针变量a1和a2,而a2在下面已经有了值,那么这里只有用变量a1,因此此空答案为a1。
    第(3)空是在创建了两个对象后执行的语句,根据程序不难推断出,这里应该要实现对象a1的数据输出,那么就要调用函数print(),因此此空答案为a1->print()。
    第(4)空所在的语句是在实现了构造函数与数据输出后执行的语句,从题目要求来分析,这里应该要调用对象的析构函数来输出“析构函数”这样一个结果,上面我们已经分析到了对象的析构函数一般在撤销对象时调用。从对象的执行过程来分析,在对象的所有处理完成后也应该撤销对象来释放所占的资源,那么此空的任务应该是用来撤销a1对象,在C++中一般用关键字delete,因此此空答案为delete。
    第(5)空和第(4)空的情况一样,因此此空答案为delete。

  • 第18题:

    以下程序的功能是:生成20个200~300之间的随机整数,输出其中能被5整除的数并求出它们的和。请填空。

    Private Sub Command1 _Click( )

    For i = 1 To 20

    x=Int(【 】*200+ 100)

    If【 】 = 0 Then

    Print x

    S = S +【 】

    End If

    Next I

    Print "Sum = "; S

    End Sub


    正确答案:Rnd x Mod 5 x
    Rnd ,x Mod 5 ,x 解析:在循环中利用Rnd函数得到1个介于0~1之间的小数,再转换为200和300之间的整数,并保存在变量x中。利用Mod函数判断x是否能够被5整除,如果可以,则将x累加到变量S中求和。

  • 第19题:

    下列程序的功能是单击窗体时在消息框中输出1000以内能同时被3、5和7整除的整数,请补充完整此程序:

    Private Sub Form_Click()

    sum=0

    For i=1 To 1000

    If______Then

    sum=sum+I

    End If

    Next I

    MsgBox sum

    End Sub


    正确答案:i Mod 3=0 And i Mod 5=0 And i Mod 7=0
    i Mod 3=0 And i Mod 5=0 And i Mod 7=0 解析: 本题考查VBA中书写条件表达式的知识。本题需要补充完整的空白处恰好就是这个程序的关键所在,也就是如何判断i能同时被3、5和7整除。判断整除我们一般使用两个数相除求余数,然后通过判断余数是否为0来实现。由于需要同时被3、5和7整除,所以3个判断的表达式之间应该是“与”的关系,最终结果为i Mod 3=0 And i Mod 5=0 And i Mod 7=0。

  • 第20题:

    阅读以下应用说明、属性设置及Visual Basic程序代码,将应填入______处的语句写在答题纸的对应栏内。

    [应用说明7]

    本应用程序的运行窗口如图2-5所示。

    只要用户单击“闪烁”按钮,文字“欢迎光临”就会以0.3s消失、0.3s显示反复进行闪烁;单击“停止”按钮,闪烁停止,恢复图示的初态。

    [属性设置7]

    [程序代码7]

    Private Sub CmdF C1ick()

    Timerl. (3)=True

    Label.Visible=False

    End Sub

    Private Sub Timerl_Timer()

    (4)=not Label.Visible

    End Sub

    Private Sub CmdT_Click()

    Timerl.Enabled=(5)

    Label.Vlsible=true

    End Sub


    正确答案:(1)False (2)300 (3)Enabled (4)Label.Visible (5)False
    (1)False (2)300 (3)Enabled (4)Label.Visible (5)False 解析:在VB中,计时器控件主要有Name、Enabled和Interval等属性。
    Name属性是该计时器的标识符。
    Enabled=true表示打开计时器,开始计时;Enabled=false表示关闭计时器,停止计时。
    Interval属性用来设置计时器事件之间的间隔,一般以ms为单位,取值范围为0~ 65535,因此其最大时间间隔不能超过65s。因为60000ms为1min,如果把Interval属性设置为1000,则表明每秒钟发生一个计时器事件。
    本题要求0.3s闪烁一次,因此,应该把Interval的属性值设置为300。在窗体运行时,需要用户单击“闪烁”按钮后才开始闪烁,所以初始化时,计时器的Enabled属性值应该为False。当用户单击“闪烁”按钮时,计时器的Enabled属性值应该为True。当用户单击“停止”按钮时,计时器的Enabled属性值应该为False。

  • 第21题:

    阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。

    【应用说明5.1】

    本应用程序的窗体中有一个下拉式列表框(名称为Combo1)和两个文本框(名称分别为 Txt1和Txt2)。运行时,用户从Combo1的列表中进行选择,程序就会将选中条目的内容以及编号(从0开始)分别在文本框Txt1和Txt2中显示出来。

    【程序代码5.1】

    Private Sub Combo1_Click()

    Txt1.Text = Combo1. (1)

    Txt2.Text = Combo1. (2)

    End Sub

    (注:可供(2)处选择的选项:List, Index, Listlndex, ListCount, Number)

    【应用说明5.2】

    本应用程序的运行窗口如图2所示。

    开发该应用的部分程序代码如下:

    【程序代码5.2】

    Private Sub CmbOp_Click()

    Dim Dataln As Double,DataOut as Double

    Dataln=(3)

    Select Case (4)

    Case "取整数部分"

    DataOut =Int(Dataln)

    Case "求平方根"

    If Dataln<0 Then

    MagBox "负数不能开平方!"

    Else

    DataOut = Sqr(Dataln)

    End If

    Case "取绝对值"

    DataOut = Abs(Dataln)

    (5)

    TxtOut. Text = str $ (DataOut)

    End Sub


    正确答案:(1)Text (2)Listlndex (3)Val(Txtln.Text)或Txtln.Text (4)CmbOp.Text (5) End Select
    (1)Text (2)Listlndex (3)Val(Txtln.Text)或Txtln.Text (4)CmbOp.Text (5) End Select 解析:(1)组合框的Text属性用于取得文本。(2)组合框的Listlndex属性用于取得选中的项的编号。(3)此处的Val(Txtln.Text)或 Txtln.Text能够取得用户的输入。(4)此处以组合框的当前值做为分支依据。(5)此处是分支语句结束,应当填结束标志。

  • 第22题:

    ●试题二

    阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。

    【说明】

    该程序运行后,输出下面的数字金字塔

    【程序】

    include<stdio.h>

    main ()

    {char max,next;

    int i;

    for(max=′1′;max<=′9′;max++)

    {for(i=1;i<=20- (1) ;++i)

    printf(" ");

    for(next= (2) ;next<= (3) ;next++)

    printf("%c",next);

    for(next= (4) ;next>= (5) ;next--)

    printf("%c",next);

    printf("\n");

    }

    }


    正确答案:
    ●试题二【答案】(1)(max-′0′)(2)′1′(3)max(4)max-1(5)′1′【解析】该程序共有9行输出,即循环控制变量max的值是从1~9。每行输出分3部分,先用循环for语句输出左边空白,(1)空填"(max-′0′)";再用循环输出从1到max-′0′的显示数字,即(2)空和(3)空分别填1和max;最后输出从max-′1′~1的显示数字,即(4)空和(5)空分别填和max-1和′1′。

  • 第23题:

    ●试题五

    阅读以下应用说明、属性设置及Visual Basic程序代码,将应填入(n)处在字句写在答题纸的对应栏内。

    【说明】

    本应用程序的运行窗口如图2所示。

    只要用户单击"闪烁"按钮,文字"欢迎光临"就会以0.3秒消失、0.3秒显示反复进行闪烁;单击"停止"按钮时,闪烁停止,恢复图示的初态。

    在开发过程中,需要设置的属性如表1所示。

    在开发过程中,需要编写的程序代码如下:

    【程序】

    Private Sub CmdF_Click()

    Timer1. (3) =True

    Labe1.Visible=False

    End Sub

    Private Sub Timer1_Timer()

    (4) =not Label.Visible

    End Sub

    Private Sub CmdT_Click()

    Timer1.Enabled= (5)

    Labe1.Visible=true

    End Sub


    正确答案:

    ●试题五

    【答案】(1)false(2)300(3)Enabled(4)Label.Visible(5)false

    【解析】单击"闪烁"按钮后,文字才开始闪烁,所以初始时定时器并未启动,(1)处应填false。定时器的时间间隔为0.3秒,即300毫秒,所以(2)处应填300(Interval属性的单位是毫秒)(3)单击"闪烁"按钮后,应启动定时器,所以修改Timer1Enable属性为True(4)定时器到时的时候,应当使Label的是否可见属性(Visible)取反,所以(4)处应填Label.Visible(5)单击"停止"按钮后,要停止定时器,所以应修改Timer1Enable属性为false