考生文件夹下有工程文件sit5.vbp..考生文件夹下in5.txt文件中保存有全校300名同学对某位教师教学质量的网上评价等级结果,共分为A、B、C、D 4个等级,表示分数为95、85、75、65分。 窗体的设计界面、各控件初始属性及有关代码见窗

admin2019-08-21  27

问题 考生文件夹下有工程文件sit5.vbp..考生文件夹下in5.txt文件中保存有全校300名同学对某位教师教学质量的网上评价等级结果,共分为A、B、C、D 4个等级,表示分数为95、85、75、65分。
    窗体的设计界面、各控件初始属性及有关代码见窗体文件。程序的功能是,程序运行时,单击“读取并统计”按钮,则按行渎取in5.txt文件的内容,并显示到文本框Text1中,然后调用Calculate过程统计A、B、C、D各等级出现的次数、计算该教师的最后评价成绩(评价成绩=各等级出现次数与相应等级得分乘积之和/评价总人数,结果要求四舍五入取整),将结果分别存储到窗体层变量m1、m2、m3、m4、s中,然后将它们的值分别显示到文本框Text2、Text3、Text4、Text5、Text6中。
    单击“保存结果”按钮,则保存结果。
    “读取并统计”和“保存结果”按钮的click事件过程已经给出,请编写calculate过程中的代码,以实现上述功能。下图是程序对某个输入文件运行的界面。

    注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须进行“读取并统计”,且必须单击“保存结果”按钮保存结果,否则无成绩。最后,程序按原文件名存盘。

选项

答案步骤1:打开本题工程文件。 步骤2:打开代码编辑窗口,填入相应的代码以实现题目的功能。 参考答案(画横线部分是需要填入的内容) Dim m1 As Integer,m2 As Integer,m3 As Integer,m4 As Integer Dim s A8 Integer Private Sub Command1_Click() Dim str As String Open App.Path&"\in5.txt"For Input As#1 Text1.Text=" " Do While Not EOF(1) Line Inout#1.str Text1.Text=Text1.Text&str Loop Close#1 Call Calculate End Sub Private Sub Command2_Click() Open App.Path&"\out5.txt"For Output As#1 Print#1,"A:";m1 Print#1."B:":m2 Print#l,"C:";m3 Print#1,"D:";m4 Print#1,"评价成绩:";s Close#1 End Sub Private Sub Calculate() Dim i As Integer sl=Text1.Text For i=1 To Len(sl) c=Mid(sl,i,1) Select Case c Case"A" m1=m1+1 Case"B" m2=m2+1 Case"C" m3=m3+1 Case"D" m4=m4+1 Case Else Exit For End Select Next i s=CInt((m1*95+m2*85+m3*75+m4*65)/300 Text2.Text=m1 Text3.Text=m2 Text4.Text=m3 Text5.Text=m4 Text6.Text=s End Sub Private Sub Form_Load() End Sub

解析 Calculate过程中利用For循环逐个取出文本字符串sl中的字符,然后把每个判断语句中的相对应的字母个数加l存到相对应的变量中,将所得平均值放入变量s中,最后结果显示在窗体中。
转载请注明原文地址:https://kaotiyun.com/show/GdUp777K
0

最新回复(0)