问题 问答题

[说明] 某银行新近开通外汇定期存款业务。为方便用户查询不同存款方式下的日利率、计算本利,特开发了日利率查询及本利计算程序,其运行窗口如下图所示。用户只要在界面上选择相应的存款方式(包括外汇币种、存期等),便可单击按钮一查询存款日利率。若输入一定数量的本金。程序还会根据所选择的存期计算并输出本利和。

在开发过程中,选择币种和存期的组合框(ComboBox)名分别为Combo1和Combo2,单旋钮 (CommandButton)“个人单位”和“金融机构”分别名为Option1和Option2,用于输入本金的文本框 (TextBox)名为Price,“输出日利率”和“计算本利和”按钮(CommandButton)分别名为Command1和 Command2。且已知,第i类币种、第j类存期之下,个人单位与金融机构的存款日利率分别存放于数组元素interestRate(i,j,0)和interestRate(i,j,1)中,其中i,j从0开始计数。[Visual Basic代码]Dim interestBate(50,10,2) As Single ’通用声明Private Sub Form_Load() …… ’为数组interestRate赋初值End Sub’根据所选择的币种、存期等信息确定日利率Function getInterestRate() Dim strCurrency, strTime As String, i, j, k, intDays As Integer strCurrency = Combo1.Text strTime = Combo2.Text For i = 0 To Combol. ListCount - 1If Combol.List(i) = strCurrency Then (1) Next For j = 0 To Combo2.ListCount - 1IfCombo2.List(j) = strTime Then (1) Next If (2) =True Thenk=0 Else: k=1 End If (3) = interestRate(i, j, k)End Function’输出日利率Private Sub Commund1_Click() MsgBox "日利率为" & getInterestRate()End Sub’输出本利和Private Sub Command2_Click() Dim strTime As String, intDays As Integer, sngCorpus, sngResult As Single strTime = Combo2. Text sngCorpus = CSng(Text1.Text) (4) ’计算存款天数(以每月30天计) Case "一个月" :intDays = 30 Case "三个月" :intDays = 90 Case "六个月" :intDays = 120 End Select ’计算并输出本利和 sngResult = sngCorpus + (5) MsgBox "本利之和为:" & sngResultEnd Sub

答案

参考答案:

解析:(1) Exit For (2) Option1.Value (3) getInterestRate (4) Select Case strTime(5) sngCorpus * intDays * getInterestRate() (1)此处需要查询interestRate中数组元素的下标,即组合框中所选择项的编号。因此循环遍历组合框的各项,当某项与所选项匹配时,应即刻退出循环;(2)由于数组元素interestRate(i,j,0)对应于个人单位,即单选钮Option1被选中,其Value属性为真;(3)函数最后需要返回日利率的值,其形式为:函数名=表达式;(4)“Select Case表达式……End Case”是VB提供的多分支选择结构,这里需要根据用户选择的存期strTime来确定天数;(5)此处应填入计算利息的表达式。

单项选择题
单项选择题