学号排列成绩表c语言数组,数组a中存储了n个学生的学号和成绩数据,其中奇数位置存储学号信息,偶数位置存储成绩信息,数组存储结构如图a所示: 图a排序前数组a存储结构 小迪同学使用选择排序思...

该博客介绍了如何使用VB编程实现一个成绩处理程序,该程序根据输入的学号和成绩数据,使用选择排序算法对成绩进行降序排序,并在排序后插入名次信息。程序首先读取数据并显示在列表框中,然后通过修改数组元素实现排序,最后在列表框中输出排序后的学号、成绩和对应的名次。
摘要由CSDN通过智能技术生成

1.

(2020·浙江模拟)

数组a中存储了n个学生的学号和成绩数据,其中奇数位置存储学号信息,偶数位置存储成绩信息,数组存储结构如图a所示:

d250ca639976e31d1e5b98a0963fae4b.png

图a排序前数组a存储结构

小迪同学使用选择排序思想对上述n个同学按成绩进行降序排序(成绩相同的按学号升序排列),并依据成绩插入各位同学的名次信息,处理结束的数组a结构如图b所示:

793941206dc5e746e5b2fb3e99a091af.png

图b排序后数组a存储结构

小迪同学使用VB编写了成绩处理程序,程序运行界面如图c所示:

0275b8fa982b0ee7abc09f3e9f37c322.png

图 c

实现上述功能的VB程序如下,请回答下列问题。

Const n = 20

Dim a(1 To 3 * n)As Integer

Private Sub Command1_Click()

'读取数据,存储在数组a中,并显示在列表框List1中

'代码略

End Sub

Private Sub Command 2_Click()

1090c40e92401e73a6aa532ce68f587b.png      ‘①改错

k = i

For j= 1 Toi-1

If a(2 * j)

k = j

End If

Next j

a(3 * i)= a(2 * k)

a(3 * i-1)= a(2 * k-1)

a(2 * k- 1)= a(2 * i- 1)

Next i

Lisi2.Addltem"第1名:学号"+ CStr(a(2))+",分数"+Str(a(3))

a(1)=1

mc=1

For i=2 To n

If④Then mc = i

List2.Addltem"第"+Str(me)+"名:学号"+CStr(a(3 * i-1))+",分数"+Str(a(3 *

i))

a(3 * i-2)= mc

Next i

End Sub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值