问题 问答题

注意:下面出现的“考生文件夹”均为c:\wexam\25160001。 (1) 在考生文件夹下有工程文件sjt3.vbp及窗体文件sjt3.frm,该程序是不完整的,请在有号的地方填入正确内容,然后删除及所有注释符(即’号),但不能修改其他部分。存盘时不得改变文件名和文件夹。如图16-3所示。 在名称为Form1的窗体上有1个Labe1控件,四个Text控件及七个命令按钮,功能为:开始启动工程时,界面上除“开始录入”及“退出”按钮之外,其他按钮均不可用(灰色显示);单击“开始录入”按钮之后,利用InputBox让用户连续且必须录入10个数。若录入为非数字符号,则给出警告“输入数据无效,请重新输入数值数据,请输入第n个数”;录入完毕后,“开始录入”变灰,其他变为可用状态;按相应的按钮可分别求出所录入数据的升序、降序排列及最大数和最小数,并在右侧对应的文本框中显示(注意用 A(10)存放最大数,A(1)存放最小数);单击“清除”按钮将所有文本框清空。 (2) 在考生文件夹下有工程文件sit4.vbp及窗体文件sjt4.frm,该程序是不完整的,请在有号的地方填入正确内容,然后删除及所有注释符(即’号),但不能修改其他部分。存盘时不得改变文件名和文件夹。如图16-4所示。 在名称为Form1,标题为“求和程序”的窗体上有3个Labe1控件,2个Text控件和3个命令按钮。该程序的主要功能是求从1到Text1中用户输入的任意自然数n的累加和。刚启动工程时,“显示结果”和“清除”按钮均为灰色;可以在输入框内输入任意自然数(n值太大时,运算时间将很长,建议不超过9位)。在输入数的同时“显示结果”变为可用。当输入为非数值时,累加结果为0;单击“显示结果”可以在Text2中显示累加和,且该框内的文字不可修改,同时“显示结果”变灰,“清除”变为可用;单击“清除”,输入框和显示框均显示“0”单击“关闭”按钮结束程序的运行。

答案

参考答案:

解析: 在窗体上建立好控件后,先设置控件属性,再编写事件过程。
用数组a(10)来接收InputBox输入的10数,InputBox的格式为:InputBox(提示[,标题][,默认][,X坐标位置][,Y坐标位置]);控件是否可用可利用其Enabled属性设置,当该值为True时可用,为False时不可用(灰色);判断是否是数字可用IsNumeric(),如果是数字返回True,否则返回False;本程序中用到的排序方法是将某一个元素做为标杆,其后的每一个元素与其比较,若小于标杆则两者交换,依此类推,题中要求排完序后a(1)至a(10)依次存放大数,在文本框中显示升序和降序的时候只要两者反序显示即可,即升序可依次显示a(1)到a(10),降序可依次显示a(10)到a(1)。解题步骤:
第一步:建立界面并设置控件属性。程序中用到的控件及其属性见表16-3。
表 16-3

控 件属 性设 置 值
 标签 Caption 点击“开始录入”按钮,录入10个数
 文本 Name
 Scrollbars
 Multilane
 Text1
 2-vertical
 true
 文本 Name
 Scrollbars
 Multilane
 Text4
 2-vertical
 true
 文本 Name Text2
 文本 Name Text3
 按钮 Name
 Caption
 Command1
 最大数
 按钮 Name
 Caption
 Command2
 最小数
 按钮 Name
 Caption  
 Command3
 升序排列
 按钮 Name
 Caption
 Command4
 降序排列 
 按钮 Name
 Caption
 Command5
 退出
 按钮 Name
 Caption
 Command6
 开始录入
 按钮 Name
 Caption
 Command7
 清除
  第二步:编写程序代码。
  程序提供的代码:
    Option Explicit
    Dim a(10) As Variant
    Dim i As Integer, j As Integer
    Dim m As Single
    Private Sub Command1_Click()
      ’Text2.Text=
      Command1.Enabled=False
      Command7.Enabled=True
    End Sub
    Private Sub Command2_Click()
      ’Text3.Text=
      Command2.Enabled=False
      Command7.Enabled=True
    End Sub
    Private Sub Command3_Click()
      For i=1 To 10
        ’Text1.Text=Text1.Text && ","
      Next i
      Command3.Enabled=False
      Command7.Enabled=True
    End Sub
    Private Sub Command4_Click()
      For i=10 To 1 Step -1
        ’Text4.Text=Text4.Text && ","
      Next i
      Command4.Enabled=False
      Command7.Enabled=True
    End Sub
    Private Sub Command5_Click()
      End
    End Sub
    Private Sub Command6_Click()
      Label1.Enabled=False
      For i=1 To 10
       a(i)=InputBox("请输入第" & i & "个数,请务必输入数值数据! ","输入")
       Do While IsNumeric(a(i) )=False
        a(i)=InputBox("输入数据无效,请重新输入数值数据! ! !" & "请输入第" & _
                i & "个数","输入")
       Loop
      Next i
      For i=1 To 9
       For j=i+1 To 10
         ’If Val(a(j) ) Val(a(i) ) Then
           m=a(j)
           a(j)=a(i)
           a(i)=m
         End If
        Next j
      Next i
      Command6.Enabled=False
      Commandl.Enabled=True
      Command2.Enabled=True
      Command3.Enabled=True
      Command4.Enabled=True
      Command5.Enabled=True
      Command7.Enabled=False
    End Sub
    Private Sub Command7_Click()
      ’Text1.Text=
      ’Text2.Text=
      ’Text3.Text=
      ’Text4.Text=
      Label1.Enabled=True
      Command6.Enabled=True
      Command4.Enabled=False
      Command3.Enabled=False
      Command2.Enabled=False
      Commandl.Enabled=False
      Command7.Enabled=False
    End Sub
    Private Sub Form_Load()
      Command1.Enabled=False
      Command2.Enabled=False
      Command3.Enabled=False
      Command4.Enabled=False
      Command7.Enabled=False
    End Sub
  参考代码:
    Option Explicit
    Dim a(10) As Variant
    Dim i As Integer, j As Integer
    Dim m As Single
    Private Sub Command1_Click()
      Text2.Text=a(10)
      Command1.Enabled=False
      Command7.Enabled=True
    End Sub
    Private Sub Command2_Click()
      Text3.Text=a(1)
      Command2.Enabled=False
      Command7.Enabled=True
    End Sub
    Private Sub Command3_Click()
      For i=1 To 10
       Text1.Text=Text1.Text & a(i) &","
      Next i
      Command3.Enabled=False
      Command7.Enabled=True
    End Sub
    Private Sub Command4_Click()
      For i=10 To 1 Step -1
      Text4.Text=Text4.Text & a(i) &","
     Next i
      Command4.Enabled=False
      Command7.Enabled=True
     End Sub
     Private Sub Command5_Click()
      End
     End Sub
     Private Sub Command6_Click()
      Label1.Enabled=False
      For i=1 To 10
        a(i)=InputBox("请输入第" & i & "个数,请务必输入数值数据!","输入")
        Do While IsNumeric(a(i) )=False
         a(i)=InputBox("输入数据无效,请重新输入数值数据! ! !" & "请输入第" & i & _
                        "个数","输入")
        Loop
      Next i
      For i=1 To 9
        For j=i+1 To 10
         If Val(a(j) )< Val(a(i) ) Then
           m=a(j)
           a(j)=a(i)
           a(i)=m
         End If
        Next j
      Next i
      Command6.Enabled=False
      Command1.Enabled=True
      Command2.Enabled=True
      Command3.Enabled=True
      Command4.Enabled=True
      Command5.Enabled=True
      Command7.Enabled=False
    End Sub
    Private Sub Command7_Click()
      Text1.Text=""
      Text2.Text=""
      Text3.Text=""
      Text4.Text=""
      Label1.Enabled=True
      Command6.Enabled=True
      Command4.Enabled=False
      Command3.Enabled=False
      Command2.Enabled=False
      Command1.Enabled=False
      Command7.Enabled=False
     End Sub
     Private Sub Form_Load()
      Command1.Enabled=False
      Command2.Enabled=False
      Command3.Enabled=False
      Command4.Enabled=False
      Command7.Enabled=False
    End Sub
  第三步:调试并运行程序。
  第四步:按题目要求存盘。
  (2) 控件是否可用可利用其Enabled属性设置,当该值为True时可用,为False时不可用(灰色);计算从1到n的数字的和可从1开始向后计算,每一步计算的结果都保留然后再用上一步计算的值和后面的数字计算;清除可使文本框的内容置空来实现(文本框.Text="");显示结果框内的文字不可修改,是通过Locked属性变为True时锁定的。解题步骤:
  第一步:建立界面并设置控件属性。程序中用到的控件及其属性见表16-4。
                                             表 16-4
标 题属 性设 置 值
 Label Name
 Caption
 Label1
 该程序的功能是求S∶S=1+2+3+…+n
 Label Name
 Caption
 Label2
 请输入:n(0≤n≤999999999)
 Label Name
 Caption
 Label3
 结果显示框
 Text Name Text1
 Text  Name
 Caption
 Text2
 True
 Commandbutton Name
 Caption
 Command1
 显示结果
 Commandbutton Name
 Caption
 Command2
 清除
 Commandbutton Name
 Caption
 Command3
 关闭
第二步:编写程序代码:
程序提供的代码:
Option Explicit
Private Sub Command1_Click()
Dim i As Double
Dim sum As Double
Dim n As Double
sum=0
n=Val(Text1.Text)
For i=1 To n
’ sum=
Next 1
’Text2.Text=
Command1.Enabled=False
Command2.Enabled=True
End Sub
Private Sub Command2_Click()
’Text1.Text=
’Text2.Text=
Command1.Enabled=True
Command2.Enabled=False
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub Form_Load()
Command1.Enabled=False
Command2.Enabled=False
End Sub
Private Sub Text1_Change()
Command1.Enabled=True
End Sub
Option Explicit
Private Sub Command1_Click()
Dim i As Double
Dim sum As Double
Dim n As Double
sum=0
n=Val(Text1.Text)
For i=1 To n
sum=sum+i
Next i
Text2.Text=sum
Command1.Enabled=False
Command2.Enabled=True
End Sub
Private Sub Command2_Click()
Text1.Text=0
Text2.Text=0
Command1.Enabled=True
Command2.Enabled=False
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub Form_Load()
Command1.Enabled=False
Command2.Enabled=False
End Sub
Private Sub Text1_Change()
Command1.Enabled=True
End Sub
第三步:调试并运行程序。
第四步:按题目要求存盘。

名词解释
单项选择题


徐强夫妇俩目前工作稳定,各自单位均缴纳四金,目前无子女及赡养费用支出。但为了以后打算,想作一理财计划,经过初步沟通面谈后,获得了以下家庭、职业与财务信息:
一、家庭成员
家庭成员年龄职业身体状况
徐强25岁IT工程师
晓芸25岁普通职员
二、家庭每月收支状况(单位:元)
                         表1 每月收支状况 (单位:元)
收入支出
晓芸税后收入2750房屋贷款月供额3000
徐强税后月收入4100月基本生活开销2000
其他收入2500零用钱3500
合计9350合计5300
三、家庭年度收支状况(单位:元)
                         表2 年度收支状况 (单位:元)
收入支出
年终奖10000人情还礼3000
存款利息400回家探亲路费2000
基金的投资收益1旅游费用5000
总计2.1总计10000
四、家庭资产负债状况
结婚时候,双方父母各赞助了一笔钱,让小夫妻俩在花木新村买了一套小户型房产,现在这房子价值50万元,贷款本金余额还有14.5万元左右。
截止到今年4月初,两人的活期存款有2万元,定期性存款有1.3万元,基金市值在5万元左右,还有1.2万元借给同学买房的,估计今年年底能全部还回来。计算下来,两人现在的家庭总资产为59.5万元,家庭净资产为45万元。
五、家庭主要理财目标
1.打算三年之后,也就是在两人29岁左右生育一个孩子,为此可能要加快准备养育孩子的资金等前期工作。
2.同时,还希望在五年后换一个大房子自住,这类目标房产目前的市场价位在100万元左右。希望到时候能够保留现有的住房,如何尽快积攒买大房子的30万元首付款
3.此外,目前只有基本社保“四金”,该如何增加自身的保障程度
4.将来该如何保持家庭金融投资资金能够拥有持续的、较强的增值能力
六、假设条件
1.年收入增长率4%;年通货膨胀率4%;学费成长率5%;住房价格增长率5%;偏股型基金年收益率20%;债券型基金年收益率5%。
2.住房公积金、养老金、医疗保险金和失业保险金分别为税前收入的7%,8%,2%, 1%。个人所得税免征额为2000元。

晓芸夫妇有着完善的社会养老保障和社会医疗保障,属双薪家庭,但家庭仍然面临着一定的风险,这其中不包括( )。

A.因疾病或意外导致家庭收入减少的风险

B.因病住院治疗或罹患重大疾病,费用可能超出基本医疗保障的风险

C.因工作状况变故导致失业的风险

D.目前家庭面临人不敷出的风险