问答题 在考生文件夹下有一个工程文件sjt3.vbp,运行情况如图所示。程序的功能是计算如下表达式的值:
z=(x-2)!+(x-3)!+(x-4)!+…+(x-N)!
其中的N和x值通过键盘分别输入两个文本框Text1、Text2中。单击名称为Command1、标题为“计算”的命令按钮,则计算表达式的值,并将计算结果在名称为Label1的标签中显示。
【正确答案】[操作步骤] 步骤1:打开本题工程文件。 步骤2:打开代码编辑窗口,去掉程序中的注释符“'”,将问号改为正确的内容。 Private Function xn(m As Integer) As Long Dim i As Integer Dim tmp As Long tmp=1 '初始化tmp为1 For i=1 To m '循环得到m的阶乘 tmp=tmp * i Next xn=tmp '返回结果 End Function Private Sub Command1_Click() Dim n As Integer Dim i As Integer Dim t As Integer Dim z As Long, x As Single n=Val (Text1.Text) 'Val()函数将数字字符转化为数值以方便运算 x=Val (Text2.Text) z=0 For i=2 To n '循环计算表达式的值 t=x-i z=z+xn(t) '保存t的阶乘累加和 Next Label1.Caption=z Call SaveResult End Sub Private Sub SaveResult () Open App.Path & "/out3.dat" For Output As #1 '打开文件 Print #1, Label1.Caption '将Label1中的内容写入文件 Close #1 End Sub 步骤3:调试并运行程序,关闭程序后按题目要求存盘。
【答案解析】[考点] 本题考点有:标签的Caption属性,Function过程,Val()函数,Call语句,Sub()函数,文件操作(Open、Close、Output),App.Path相对路径以及For循环语句。 [解析] 通过循环语句实现xn()函数的乘幂运算;在命令按钮的单击事件过程中通过Val()函数实现字符类型向数值型的转换,通过循环语句及调用xn()函数,获得函数返回值,实现表达式的结果运算;最后运用Call语句调用SaveResult()函数,并将结果保存在文件夹下的out4.dat文件中。