- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
1.(2017·4月浙江选考)小王编写了一个依据成绩计算名次的VB程序,成绩为
0到100之间的整数。算法的基本思想:先统计每个分数的个数,然后按照分数
从高到低依次计算每个有效分数(该分数的个数不为0)对应的名次,分数相同时
名次并列。最高分为第1名,该分数的名次与个数之和为下一个有效分数的名次,
以此类推。程序用数组A存放每个分数对应的个数,数组B存放每个分数对应
的名次。例如,下表中最高分100有2个,并列第1名,则分数96的名次为分
数100的名次加上分数100的个数,即第3名。
分数100999897969594…0
个数(A数组)2000103…0
名次(B数组)134…
程序运行时,学生数据显示在列表框List1中,单击“计算”按钮Command1,
计算结果显示在列表框List2中,程序运行界面如图所示。
实现上述功能的VB程序如下,请回答下列问题:
(1)如表所示,若分数93的个数为2,则该分数对应的名次为________。
(2)请在划线处填入合适的代码。
DimsName(1To50)AsString′存放学生姓名
DimsScore(1To50)AsInteger′存放学生分数
DimrecCountAsInteger′存放学生人数
PrivateSubForm_Load()
′本过程从数据库中读取学生数据,存储在相应的变量中,并在List1中显示
′代码略
EndSub
′整数转换成长度固定的字符串
Functionads(xAsInteger,nAsInteger)AsString
1
DimsxAsString,nxAsInteger,iAsInteger
sx=Str(x):nx=Len(sx)
Fori=1Ton-nx
sx==+sx
Nexti
____①____
EndFunction
PrivateSubCommand1_Click()
DimA(0To100)AsInteger′存放每个分数的个数
DimB(0To100)AsInteger′存放每个分数的名次
DimmcAsInteger,scoreAsInteger,iAsInteger
Fori=0To100
A(i)=0
Nexti
Fori=1TorecCount′计算每个分数的个数
____②____
Nexti
mc=1
Fori=100To0Step-1′计算每个分数的名次
IfA(i)0Then
B(i)=mc
____③____
EndIf
Nexti
List2.Clear
List2.AddItem“姓名分数名次”
List2.AddItem“---------”
Fori=1TorecCount
score=sScore(i)
mc=B(sScore(i))
List2.AddItemsName(i)+ads(score,5)+“第”+ads(mc,3)+“名”
2
Nexti
EndSub
答案(1)7(2)①ads=sx②A(sScore(i))=A(sScore(i))+1
③mc=mc+A(i)或mc=B(i)+A(i)
2.(2016·10月浙江选考)小王与小李合作编写一个成绩统计的VB程序:小王
文档评论(0)