07秋VB上机.docx

上传人:b****7 文档编号:9173940 上传时间:2023-02-03 格式:DOCX 页数:18 大小:128.07KB
下载 相关 举报
07秋VB上机.docx_第1页
第1页 / 共18页
07秋VB上机.docx_第2页
第2页 / 共18页
07秋VB上机.docx_第3页
第3页 / 共18页
07秋VB上机.docx_第4页
第4页 / 共18页
07秋VB上机.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

07秋VB上机.docx

《07秋VB上机.docx》由会员分享,可在线阅读,更多相关《07秋VB上机.docx(18页珍藏版)》请在冰豆网上搜索。

07秋VB上机.docx

07秋VB上机

江苏省高等学校非计算机专业学生

计算机基础知识和应用能力等级考试上机试卷(2007秋)

二级VisualBasic语言(试卷代号VB01)

(本试卷完成时间70分钟)

【考试须知】

1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;

2.答题完成后,文件必须存放在指定位置,否则适当扣分;考试盘中若无指定文件,则不予评分;

3.程序代码应缩行书写(呈锯齿形)。

一、改错题(14分)

【题目】本程序的功能是从随机生成的由3位数组成的数组中,找出所有的升序数。

所谓升序数是指该数的各位数字自左向右,依次递增的整数,如134,278,489等。

OptionExplicit

PrivateSubCommand1_Click()

DimA(30)AsInteger,iAsInteger,kAsInteger

ForI=1To30

A(i)=Int(900*Rnd+100)

Picture1.PrintA(i);

IfiMod5=0ThenPicture1.Print

Nexti

Picture1.Print“升序数:

ForI=1To30

IfSX(A)Then

Picture1.PrintA(i);

K=k+1

EndIf

Nexti

Ifk=0ThenPicture1.Print“无升序数”

Picture1.Print

EndSub

PrivateFunctionSX(NAsInteger)AsBoolean

DimIAsInteger

Dimw1AsInteger,w2AsInteger

ForI=2ToLen(Str(N))

W1=Mid(N,i-1,1)

w2=Mid(N,I,1)

Ifw1>=w2ThenExitFor

Nexti

SX=True

EndFunction

【要求】

1.新建工程,输入上述代码,改正程序中的错误;

2.改错时,不得增加或删除语句,但可适当调整语句位置;

3.将窗体文件和工程文件分别命名为F1和P1,并保存到软盘A的根目录下。

二、编程题(26分)

【题目】编写一个查找介于整数A,B之间所有同构数的程序。

若一个数出现在自己平方数的右端,则称此数为同构数。

如5在52=25的右端,25在252=625的右端,故5和25为同构数。

【编程要求】

1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;

2.运行程序,在文本框1与文本框2中分别输入表示查找范围的A与B的数值,按“查找”按钮,则开始查找并在列表框中显示结果;按“清除”按钮,则将文本框和列表框清空,并将焦点置于文本框1上;按“结束”按钮,结束程序运行;

3.程序中应定义一个名为pd的函数过程,用于判断一个正整数是否为同构数。

【要求】

将窗体文件和工程文件分别命名为F2和P2,并保存到软盘A的根目录下。

江苏省高等学校非计算机专业学生

计算机基础知识和应用能力等级考试上机试卷(2007秋)

二级VisualBasic语言(试卷代号VB02)

(本试卷完成时间70分钟)

【考试须知】

1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;

2.答题完成后,文件必须存放在指定位置,否则适当扣分;考试盘中若无指定文件,则不予评分;

3.程序代码应缩行书写(呈锯齿形)。

一、改错题(14分)

【题目】本程序的功能是:

将在一个字符串中的英文词汇提取出来并重组成正常的英文句子。

说明:

输入的字符串必须以非英文字符结束。

(程序界面参见右图)

OptionExplicit

OptionBase1

PrivateSubCommand1_Click()

DimstAsString,words()AsString,iAsInteger

st=LCase(Text1)

Callchoice(st,words)

st=""

Fori=1ToUBound(words)

st=st&words(i)&""

Nexti

st=st&words(i)&"."

Text2=UCase(Left(st,1))&Mid(st,2)

EndSub

PrivateSubchoice(sAsString,ws()AsString)

DimstAsString*1,iAsInteger,kAsInteger

DimPAsString

Fori=1ToLen(s)

st=Mid(s,i,1)

k=k+1

Ifst>="a"Andst<="z"Then

P=P&st

ElseIfP<>""Then

ReDimws(k)

ws(k)=P

P=""

EndIf

Nexti

EndSub

【要求】

1.新建工程,输入上述代码,改正程序中的错误;

2.改错时,不得增加或删除语句,但可适当调整语句位置;

3.将窗体文件和工程文件分别命名为Fl和P1,并保存到软盘A的根目录下。

二、编程题(26分)

【题目】编写程序,输入数据范围m、n,求出介于m、n之间所有的素数,并按每行五个素数的形式输出到多行文本框中。

【编程要求】

1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;

2.运行程序,在文本框1和文本框2中分别输入m与n的值,按“运行”按钮,则开始查找并按要求格式在多行文本框3中显示结果;按“清除”按钮,将文本框清空,并将焦点置于文本框1;按“结束”按钮,结束程序运行;

3.程序中应定义一个名为prime的函数过程,用于判断一个正整数是否为素数。

【要求】

将窗体文件和工程文件分别命名为F2和P2,并保存到软盘A的根目录下。

江苏省高等学校非计算机专业学生

计算机基础知识和应用能力等级考试上机试卷(2007秋)

二级VisualBasic语言(试卷代号VB03)

(本试卷完成时间70分钟)

【考试须知】

1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;

2.答题完成后,文件必须存放在指定位置,否则适当扣分;考试盘中若无指定文件,则不予评分;

3.程序代码应缩行书写(呈锯齿形)。

一、改错题(14分)

【题目】本程序的功能是找出2~30之内的所有完数。

所谓完数是指一个数除自身以外的所有因子(1被认为是因子)的和等于该数的数。

例如6的因子是l、2、3,l+2+3=6,所以6是完数。

OptionExplicit

PrivateSubCommand1_Click()

DimstAsString,fAsBoolean

DimiAsInteger,ws()AsInteger,JAsInteger

Fori=2To30

Callwanshu(i,f,ws)

f=False

IffThen

st=CStr(i)&"="

ForJ=1ToUBound(ws)

st=st&ws(J)&"+"

NextJ

List1.AddItemst&ws(J)

EndIf

st=""

Nexti

EndSub

PrivateSubwanshu(nAsInteger,fAsBoolean,ws()AsInteger)

DimiAsInteger,kAsInteger,sumAsInteger

Fori=1Ton-1

k=k+1

IfnModi=0Then

ReDimPreservews(k)

ws(k)=i

sum=sum+i

EndIf

Nexti

Ifn=sumThenf=True

EndSub

【要求】

1.新建工程,输入上述代码,改正程序中的错误;

2.改错时,不得增加或删除语句,但可适当调整语句位置;

3.将窗体文件和工程文件分别命名为F1和P1,并保存到软盘A的根目录下。

二、编程题(26分)

【题目】编写程序,随机生成一个由两位数组成的4行5列的数组,求数组每一行的最小元素及其所在的列号。

(若一行有多个最小元素则取其中之一即可)

【编程要求】

1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;

2.运行程序,按“生成数组”按钮,生成一个4行5列的两位随机整数数组,并在图片框中输出;再按“求每行最小”按钮,则调用求二维数组每行最小元素及其位置的Sub过程,求出每行最小元素及所在列号,输出到多行文本框;按“清除”按钮,则将图片框与多行文本框清空;

3.程序中应定义一个名为rowmin的通用Sub过程,用于求二维数组每行最小元素及其位置。

【要求】

将窗体文件和工程文件分别命名为F2和P2,并保存到软盘A的根目录下。

江苏省高等学校非计算机专业学生

计算机基础知识和应用能力等级考试上机试卷(2007秋)

二级VisualBasic语言(试卷代号VB04)

(本试卷完成时间70分钟)

【考试须知】

1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;

2.答题完成后,文件必须存放在指定位置,否则适当扣分;考试盘中若无指定文件,则不予评分;

3.程序代码应缩行书写(呈锯齿形)。

一、改错题(14分)

【题目】本程序的功能是。

将文本框中输入的以逗号分隔的若干数据存入一个数组;如果相邻数据的和为素数,则将其输出到列表框中。

OptionExplicit

PrivateSubCommand1_Click()

Dima()AsInteger,iAsInteger

DimkAsInteger,sAsString,stAsString

s=text1

Callchange(s,a)

Fori=1ToUBound(a)

k=a(i)+a(i+1)

Ifprime(k)Then

st=a(i)&"+"&a(i+1)&"="&k

List1.AddItemst

EndIf

Nexti

EndSub

PrivateSubchange(sAsString,a()AsInteger)

DimkAsInteger,nAsInteger

Do

n=InStr(s,",")

k=k+1

ReDimPreservea(k)

Ifn<>0Then

a(k)=Val(Left(s,n-1))

Else

a(k)=Val(s)

EndIf

s=Mid(s,n+1,Len(s)-n)

LoopUntiln<0

EndSub

PrivateFunctionprime(nAsInteger)AsBoolean

DimiAsInteger

Fori=2ToSqr(n)

IfnModi=0ThenExitFor

Nexti

prime=True

EndFunction

【要求】

1.新建工程,输入上述代码,改正程序中的错误;

2.改错时,不得增加或删除语句,但可适当调整语句位置:

3.将窗体文件和工程文件分别命名为F1和P1,并保存到软盘A的根目录下。

二、编程题(26分)

【题目】编写程序,输入整型数据范围m、n,求出介于m、n之间所有的升序数,并输出到列表框中。

所谓升序数是指组成数据的各位数字从左到右依次递增的整数。

例如135就是一个升序数。

【编程要求】

1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;

2.运行程序,首先在文本框1和文本框2中分别输入m与n的值,按“运行”按钮,则开始查找符合要求的数据并在列表框中显示结果:

按“清除”按钮,则将文本框与列表框清空,焦点置于文本框1;按“结束”按钮,结束程序运行;

3.程序中应定义一个函数过程,用于判断一个正整数是否为升序数。

【要求】

将窗体文件和工程文件分别命名为F2和P2,并保存到软盘A的根目录下。

江苏省高等学校非计算机专业学生

计算机基础知识和应用能力等级考试上机试卷(2007秋)

二级VisualBasic语言(试卷代号VB05)

(本试卷完成时间70分钟)

【考试须知】

1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;

2.答题完成后,文件必须存放在指定位置,否则适当扣分:

考试盘中若无指定文件,则不予评分;

3.程序代码应缩行书写(呈锯齿形)。

一、改错题(14分)

【题目】设st1和st2是两个无重复字符的且己按字典序排序的字符串。

本程序功能是,将st1中的与st2不重复的字符插入到st2的适当位置,使得st2中的字符仍保持字典序。

PrivateSubCommand1_Click()

Dimst1AsString,st2AsString

DimiAsInteger,jAsInteger,SAsString*1,opAsInteger,KAsInteger

st1=Text1

st2=Text2

op=1

Fori=1ToLen(st1)

S=Mid(st1,i,1)

K=Fun(st2,S,op)

IfK<>0Then'将字符插入到st2中

st2=st2&""

Forj=Len(st2)ToK+1

Mid(st2,j,1)=Mid(st2,j-1,1)

Nextj

Mid(st2,K,1)=S

EndIf

Nexti

Text3=st2

EndSub

PrivateFunctionFun(StAsString,SAsString*1,PAsInteger)AsInteger

DimiAsInteger

Fori=PToLen(St)

IfS

ExitFor

ElseIfS=Mid(St,i,1)Then

Fun=0

ExitFor

EndIf

Nexti

Fun=i

P=i+1

EndFunction

【要求】

1.新建工程,输入上述代码,改正程序中的错误;

2.改错时,不得增加或删除语句,但可适当调整语句位置;

3.将窗体文件和工程文件分别命名为F1和P1,并保存到软盘A的根目录下。

二、编程题(26分)

【题目】编写程序,求出介于正整数A、B之间所有包含4个因子的数(因子不包括1和自身)。

【编程要求】

1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;

2.运行程序,在文本框1与文本框2中分别输入A与B的数值,按“运行”按钮,开始查找,并在列表框中按参考界面格式显示查找结果(要求使用循环结构输出因子);按“清除”按钮,则将所有文本框和列表框清空,焦点置于文本框1;按“结束”按钮,结束程序运行;

3.程序中应定义一个求整数的因子(因子存于数组中)的通用Sub过程。

【要求】

将窗体文件和工程文件分别命名为F2和P2,并保存到软盘A的根目录下。

江苏省高等学校非计算机专业学生

计算机基础知识和应用能力等级考试上机试卷(2007秋)

二级VisualBasic语言(试卷代号VB06)

(本试卷完成时间70分钟)

【考试须知】

1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;

2.答题完成后,文件必须存放在指定位置,否则适当扣分:

考试盘中若无指定文件,则不予评分:

3.程序代码应缩行书写(呈锯齿形)。

一、改错题(14分)

【题目】本程序的功能是,在一个由数字和其他字符组成的字符串中,将单个或连续出现的数字作为一个子串,在其前后各插入一个“#”字符,以便与其他字符区分。

OptionExplicit

PrivateSubCommand1_Click()

DimstAsString,iAsInteger

DimPAsString,sAsString*1

st=Text1

Do

s=Mid(st,i,1)

i=i+1

Ifs>="0"Ands<="9"Then

P=P&s

ElseIfP<>""Then

Callinst(s,P,i)

P=""

EndIf

LoopUntili>=Len(st)

Text2=st

EndSub

PrivateSubinst(sAsString,PAsString,iAsInteger)

DimnAsInteger,tAsString

n=Len(P)

t=Mid(s,1,i-n-1)&"#"&P&"#"

t=t&Right(s,Len(s)-i+1)

s=t

EndSub

【要求】

1.新建工程,输入上述代码,改正程序中的错误;

2.改错时,不得增加或删除语句,但可适当调整语句位置;

3.将窗体文件和工程文件分别命名为F1和P1,并保存到软盘A的根目录下。

二、编程题(26分)

【题目】编写程序,查找介于正整数A、B之间的所有只有两个数字相同的完全平方数。

所谓完全平方数是指其平方根为整数的数。

例如676、900、1521等都是介于500~2000之间符合条件的数。

【编程要求】

1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;

2.运行程序,在文本框1与文本框2中输入表示查找范围的A与B的数值,按“运行”按钮,开始查找并在列表框中显示结果;按“清除”按钮,则将所有文本框和列表框清空,并将焦点置于文本框1上;按“结束”按钮,结束程序运行;

3.程序中应定义一个名为dec的通用过程,其功能是验证组成一个数的所有数字中只能有两个数字相同。

【提示】逐个比较各位数字是否相同,并连续计数。

若计数=1(仅有两个数字相同),则符合要求。

【要求】

将窗体文件和工程文件分别命名为F2和P2,并保存到软盘A的根目录下。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 建筑土木

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1