mysql修改学生身高_【加试题】小李要给全班学生拍合照,要求所有学生站成一排,中间高,两端低,小李采用如下排队方法:按身高信息从高到低排序,让身高第一位的同学单独站出来,身高第二位同学站在他的左手边...

1.

(2018高二下·绍兴月考)

【加试题】小李要给全班学生拍合照,要求所有学生站成一排,中间高,两端低,小李采用如下排队方法:按身高信息从高到低排序,让身高第一位的同学单独站出来,身高第二位同学站在他的左手边,身高第三位同学站在他的右手边,再依次向两端安排其他人。每个学生的学号与身高信息已存人数据库中。小李编写了VB程序,从数据库中读取学号和身高信息,在“原始信息”下方的列表框List1中显示,单击“排队”按钮Command1,在“排好的队形”下方的列表框List2中显示排好的队形,程序界面如图所示。

3e81904e8e743cb3a5ae64f2a5762096.png

实现上述功能的VB程序如下,但加框处代码有错,请改正。

Const maxn=100

Dim id(1 To maxn)As Integer     ‘存储每个学生的学号

Dim tall(1 To maxn)As Single     ‘存储每个学生的身高

Dim n As Integer                ‘存储学生的个数

Private Sub Form_Load()

‘从数据库得到学生的总人数n

‘从数据库读取学号信息,并存入id数组中

‘从数据库读取身高信息,并存入tall数组中

‘在列表框List1中显示学号与身高

End Sub

Private Sub Command1_Click()

Dim a(1 To maxn)As Integer    ‘存储排好队形的学号

Dim b(1 To maxn)As Single     ‘存储排好队形的身高

Dim i As Integer,j As Integer

Dim t1 As Integer,tr As Integer,mid As Integer

Dim tmp1 As Single,tmp2 As Integer

For i=1 To n-1

For j=n To i+1 Step-1

If

a2ba8213387814c85ddea38a5fcf39a1.png  Then        ‘(1)

tmp1=tall(j):tall(j)=tall(j-1):tall(j-1)=tmp1

tmp2=id(j):id(j)=id(j-1):id(j-1)=tmp2

End If

Next j

Next i

If n Mod 2=0 Then     ‘根据总人数的奇偶性,确定队形的中间位置

mid=n\2+1

Else

mid=(n+1)\2

End If

‘身高第一位的同学,安排在队形的中间位置

a(mid)=id(1)

b(mid)=tall(1)

t1=mid-1

tr=mid+1

For i=2 To n

If

3fdfd1538c1a0a52dd3ba8c5171b7be3.png  Then           ‘(2)

a(tr)=id(i)

b(tr)=tall(i)

tr=tr+1

Else

a(t1)=id(i)

b(t1)=tall(i)

t1=t1-1

End If

Next i

List2.AddItem“位置”+“学号 ”+“身高”

For i=1 To n

List2.Addltem Str(i)+”  ”+Str(a(i))+”  ”+Str(b(i))

Next i

End Sub

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值