导航菜单
首页 >  浙江省高考技术真题  > 2022年高考真题 技术 (浙江卷)

2022年高考真题 技术 (浙江卷)

有m个人结伴旅行(m≤9,每个人用整数1~m编号)。期间既有全员参与的集体活动,也有自主参与的小团队活动。每项活动的消费由参与人平均分摊,其中一人先行垫付并记录。记录内容包括该项活动的人均消费金额(整数,单位:元)参与人。每项活动的参与人用字符串表示,垫付人排在第1位。如“25134”表示2、5、1、3、4号参与该项活动,其中2号是垫付人。旅行结束后依据所有活动的消费记录进行结算:

1)计算每个人的应还款(应还款=应分摊的总金额-先行垫付的总金额);

2)根据所有人的应还款数据计算转账明细(应还款为正的人转给应还款为负的人)。根据上述要求编写VB程序,功能如下:运行程序,读取消费记录数据并在列表框List 1中显示。单击“结算”按钮Command 1,在列表框List 2中显示每个人的应还款,在列表框List 3中显示转账明细。程序运行界面如第15题图所示。

(1)结合程序与界面可知,AddItem是List 2的_______(单选,填字母:A.方法名/B.事件名/C.属性名)。

(2)实现上述功能的部分VB程序如下,请在划线处填入合适的代码。

(3)程序中加框处代码有错,请改正。

Const n=9,m=15

Dim x(1 To n)As Integer       'x(i)存储第i项消费记录的人均消费金额

Dim a(1 To n)As String        'a(i)存储第i项消费记录的参与人

Private Sub Form_Load()

′读取所有消费记录,存入数组x和a中,并显示在列表框List 1中

′代码略

End Sub

Private Sub Commandl_Click()

Dim i As Integer,j As Integer,k As Integer,p As Integer

Dim c As Integer,w As Integer,v As Integer

Dim b(1 To n),As Integer        '保存应还款数据

For i= 1 To m

b(i)=0

Next i

For i=1 To n      '根据消费记录计算应还款ni

k=Len(a(i))

p=Val(Mid(a(i),1,1))

b(p)=b(p)-(k–1)*x(i)

For j=2 To k

p=Val(Mid(a(i),j,1))

    ①   

Next j

Next i

c=0

Fori=1 To m

List 2. AddItemStr(i)+“号”+Str(b(i))

If b(i)>0 Then c=c+1

Nexti

i=1:j=10               '根据应还款数据计算转账明细

DoWhile    ②    

Do While b(i)=0

j=j+1

Loop:

    ③   

If w>0 Then v=b(j)|Else v=b(i)

b(i)=b(i)-v:b(j)=b(j)+v

List 3. AddltemStr(i)+“号->”+Str(j)+“号   ”+Str(v)

If w

相关推荐: