知识题项目开发二三大结构.docx
- 文档编号:7634708
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:18
- 大小:168.73KB
知识题项目开发二三大结构.docx
《知识题项目开发二三大结构.docx》由会员分享,可在线阅读,更多相关《知识题项目开发二三大结构.docx(18页珍藏版)》请在冰豆网上搜索。
知识题项目开发二三大结构
项目二习题
一.选择题:
1.MsgBox函数中有4个参数,其中必须写明的参数是_________.
A.指定对话框中显示按钮的数目
B.设置对话框标题
C.所有参数都是可选的
D.提示信息
2.语句X=X+1的正确含义是__________。
A.变量X的值与X+1的值相等
B.将变量X的值存到X+1中去
C.将变量X的值加1后赋给变量X
D.变量X的值为1
3.以下________程序段可以实现X、Y变量值的交换。
A.Y=X:
X=Y
B.Z=X:
Y=Z:
X=Y
C.Z=X:
X=Y:
Y=Z
D.Z=X:
W=Y:
Y=Z:
X=Y
4.InputBox函数返回的函数值的类型是_________。
A.数值
B.字符串
C.根据需要可以是任何类型数据
D.数值或字符串
5.下列语句中正确的是___________。
(多选)
A.x+y=5
B.N=15
C.label1.Text=”time”
D.A=x+y
6.对于InputBox函数,下列说法正确的是___________。
(多选)
A.每执行一次InputBox函数,只能输入一个值
B.InputBox函数的Prompt参数不能默认
C.InputBox函数输入的是数值型
D.函数值必须赋予一个变量
7.下列语句和函数调用正确的是_____________。
(多选)
A.MsgBox(“是否继续”)
B.X=MsgBox(“是否继续”)
C.InputBox(“请输入数据”)=X
D.X=InputBox(“请输入数据”)
8.执行以下语句后显示结果为______。
Dimx
IfxThenLabel1.Text=xElseLabel1.Text=x+1
A.-1
B.0
C.1
D.不确定
9.多分支结构的Case语句,下列写法错误的是_______。
A.Case1,5,7,9
B.Case8To10
C.Case10To2
D.CaseIs<”man”
10.语句Ifx=1Theny=1,下列说法正确的是_________。
A.x=1和y=1均为赋值语句
B.x=1和y=1均为关系表达式
C.x=1为关系表达式,y=1为赋值语句
D.x=1为赋值语句,y=1为关系表达式
11.下面语句正确的是__________。
A.Ifx<3*yAndx>yTheny=x^3
B.Ifx<3*yAndx>yTheny=x3
C.Ifx<3*y:
x>yTheny=x^3
D.Ifx<3*yAndx>yTheny=x**3
12.下列语句不正确的是_______________。
(多选)
A.Ifx≠yThenLabel1.Text=“x不等于y”
B.Ifx<>yThenLabel1.Text=“x不等于y”
C.Ifx> D.ifx≠yLabel1.Text=“x不等于y” 13.下面程序段求两个数中大数,______________是正确的。 (多选) A.Max=IIf(x>y,x,y) B.Ifx>ythenMax=xElseMax=y C.Max=x Ify>=xThenMax=y D.Ify>=xThenMax=y Max=x 14.下列程序段正确的是: ___________。 (多选) A. Ifmark>=90Then Label1.Text="优" ElseIfmark>=80Then Label1.Text="良" ElseIfmark>=70Then Label1.Text="中" ElseIfmark>=60Then Label1.Text="及格" Else Label1.Text="不及格" EndIf B. Ifmark<60Then Label1.Text="不及格" ElseIfmark<70Then Label1.Text="及格" ElseIfmark<80Then Label1.Text="中" ElseIfmark<90Then Label1.Text="良" Else Label1.Text="优" EndIf C. Ifmark>=60Then Label1.Text="及格" ElseIfmark>=70Then Label1.Text="中" ElseIfmark>=80Then Label1.Text=t"良" ElseIfmark>=90Then Label1.Text="优" Else Label1.Text="不及格" EndIf D. SelectCasemark CaseIs>=90 Label1.Text="优" CaseIs>=80 Label1.Text="良" CaseIs>=70 Label1.Text="中" CaseIs>=60 Label1.Text="及格" CaseElse Label1.Text="不及格" EndSelect 15.For-Next循环的初值、终值与步长__________。 A.只能是具体的数值 B.只能是表达式 C.可以是数值表达式 D.可以是任何类型的表达式 16.执行下面的程序段后,n的值为__________。 Forn=1To20 IfnMod3<>0Thenm=m+n\3 Nextn Label1.Text=n A.15 B.18 C.21 D.24 17.For-Next循环结构中,若循环控制变量的步长为0,则________. A.形成无限循环 B.循环体执行一次后结束循环 C.语法错误 D.循环提不执行即结束循环 18.下列循环语句能正常结束循环的是____________。 A. i=5 Do i=i+1 LoopUntili<0 B. i=1 Do i=i+2 LoopUntili=10 C. i=10 Do i=i-1 LoopUntili<0 D. i=6 Do i=i-2 LoopUntili=1 19.对于循环结构(多选) Do 循环体 LoopWhile<条件> 则以下叙述中正确的是__________。 A.若“条件”是一个为0的常数,则一次也不执行循环体 B.“条件”可以是关系表达式、逻辑表达式或常数 C.循环体中可以使用ExitDo语句 D.如果“条件”总是为True,则不停地执行循环体 20.以下____________不是正确的For-Next循环结构。 (多选) A.Forx=1ToStep10 … Nextx B.Forx=3To-3Step-3 … Nextx C.Forx=1To10 Re: … Nextx Ifi=10ThengotoRe D.Forx=3To10Step3 … Nexty 21.下面哪几个程序段能分别正确显示1! 、2! 、3! 、4! 的值__________。 (多选) A.Fori=1To4 n=1 Forj=1Toi n=n*j Nextj Label1.Text=n Nexti B.Fori=1To4 Forj=1Toi n=1 n=n*j Nextj Label1.Text=n Nexti C.n=1 Forj=1To4 n=n*j Label1.Text=n Nextj D.n=1 j=1 DoWhilej<=4 n=n*j Label1.Text=n j=j+1 Loop 二.程序填空: 1.根据下图,在空格处填入适当的内容: MsgBox(____①______,48,____②_____) 2.以下程序的功能是: 输入一个3位正整数,将之逆序输出。 例如,输入345,则输出543。 请在空格处填入适当的内容,构成完整程序。 PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click Dima%,b%,c%,m% m=InputBox("请输入一个正整数: ") a=___________①__________m\100 b=______________②______________(m\10)-10*a c=mMod10 MsgBox"结果="+_________________③__________________ Str(100*c+10*b+c) EndSub 3.以下程序的功能是: 在窗体中每次单击窗体时,窗体均向右移动100缇。 请在空格处填入适当的内容,构成完整程序。 PublicClassForm1 Dimx! PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click x=x+______①______ Me._______②________=x EndSub EndClass 4.下列程序用于检查在文本框中输入的表达式中的圆括号是否匹配,请在空格处填入适当的内容,构成完整程序。 Dimnum% PrivateSubTextBox1_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesTextBox1.KeyPress If________①_____________Thenchr(asc(e.keychar))=”)” num=num+1 ElseIf__________②___________Then num=num-1 EndIf IfAsc(e.KeyChar)=13Then If_______③________Thennum=0 Label1.Text="左右括号配对" ElseIf_______④________Then Label1.Text="左括号多于右括号"&num&"个" Else Label1.Text="右括号多于左括号"&-num&"个" EndIf EndIf EndSub 5.下面是一模拟袖珍计算器的程序,输出界面如下图所示。 请在空格处填入适当的内容,构成完整程序。 PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click DimsInput1AsSingle,sInput2AsSingle DimiErrorAsInteger sInput1=Val(TextBox1.Text) sInput2=Val(TextBox2.Text) SelectCase__________①__________textbox3.text Case"+" TextBox4.Text=Str(sInput1+sInput2) Case"-" TextBox4.Text=Str(sInput1-sInput2) Case"*" TextBox4.Text=Str(sInput1*sInput2) Case"/" IfsInput2<>0Then TextBox4.Text=Str(sInput1/sInput2) Else iError=MsgBox("分母为零,出错",vbRetryCancel) IfiError=vbRetryThen TextBox2.Text="" _________②____________textbox2.focus Else End EndIf EndIf CaseElse iError=MsgBox("运算符出错,再输入",vbRetryCancel) IfiError=vbRetryThen TextBox3.Text="" TextBox3.Focus() Else End EndIf EndSelect EndSub PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click End EndSub 6.输入一个大于0且小于1000的整数,并判断其是否为同构数(所谓同构数,是指此数的平方数的最后几位与该数相等)。 例如,252为625,25是同构数,请在空格处填入适当的内容,构成完整程序。 PrivateSubForm_Click() Dima! b! a=Val(InputBox("输入一个数")) b=a*a If___________①____________Thenbmod10=aorbmod100=aorbmod1000=a MsgBoxStr(a)&"是同构数" Else MsgBoxStr(a)&"不是同构数" EndIf EndSub 7.编写加密程序。 在TextBox1中,将输入字符串中的所有小写字母转换为大写字母,同时按如下规律加密: “A”转换为“C”、“B”转换为“D”、…、“X”转换为“Z”、“Y”转换为“A”、“Z”转换为“B”,出现在字符串中的其他字符不变,并在TextBox2中将结果输出,如下图所示。 分析: 加密有各种方法,最简单的加密方法是: 将每个字母加一序数,本例中加序数2。 PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click DimstrinAsString,codeAsString,chAsString DimstrlenAsInteger,i%,chasc% strin=TextBox1.Text'用户输入的字符串 strlen=________①________'去掉字符串右边的空格,求真正的长度len(rtrim(strin)) code=""'加密后的字符串,初值为空 Fori=1Tostrlen ch=_______②__________'取字符串中第i个字符mid(strin,i,1) ch=UCase(ch)'将小写字母转换为大写字母 SelectCasech Case"A"To"Z" chasc=Asc(ch)+2'大写字母加序数加密 Ifchasc>Asc("Z")Thenchasc=chasc–26'加密后字母超过Z code=code+________③________chr(chasc) CaseElse code=code+ch'当第i个字符为其他字符时不加密 EndSelect Nexti TextBox2.Text=code'显示加密后的字符 EndSub PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click Text1.Text="" Text2.Text="" EndSub PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click End EndSub 8.对输入的任意大小写文章进行整理,规则: 所有句子开头为大写,其他都是小写字母,句子结束符为“.”、“? ”或“! ”,运行界面如下图所示。 提示: 要实现句首为大写字母,其他都是小写字母,必须设置一个变量,存放当前处理的字符的前一个字符,来判断前一字符是否为句子结束符。 PrivateSubTextBox1_LostFocus(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesTextBox1.LostFocus DimPreCAsString,CurCAsString,i% PreC="." TextBox2.Text="" Fori=1ToLen(TextBox1.Text) CurC=___________①______________mid(textbox1.text,i,1) IfPreC="."OrPreC="? "OrPreC="! "Then CurC=UCase(CurC) Else CurC=LCase(CurC) EndIf TextBox2.Text=TextBox2.Text&CurC PreC=_________②__________ Nexti EndSub 9.求Sn=a+aa+aaa+aaaa+…+aa...aaa(n个a),其中a是一个由随机数产生的1-9(包括1,9)中的一个正整数,n是一个由随机数产生的5-10(包括5,10)中的一个数,程序运行结果如下图所示。 例如: 当a=7,n=8时,Sn=7+77+777+7777+...+77...777(8个7)。 提示: 该题通项的关键是将一个数不断增加位数,通项关系为: Ti+1=Ti*10+a PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click Dims! t! i! a%,n% a=Int(Rnd()*9+1) n=Int(Rnd()*6+5) ______①_______t=0 s=0 Label1.Text="a="&a&"n="&n&vbCrLf Fori=1Ton ___________②__________t=t*10+a s=s+t Label1.Text&=t&Space(3) Nexti Label1.Text&=vbCrLf Label1.Text&=s EndSub 10.显示出所有的水仙花数(一个3位数,其各位数字立方和等于该数字本身)。 PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click Dimi%,j%,k%,s% Label1.Text="" Fori=________①________0to9 Forj=0To9 Fork=0To9 s=i*100+j*10+k Ifs=___________②____________Theni^3+j^3+k^3 Label1.Text&=s&"" EndIf Nextk Nextj Nexti EndSub 三.程序改错: 1.下面程序的功能是: 随机产生一个两位数以内的整除算式,当在文本框中输入计算结果,并单击“查看答案”按钮后,弹出MsgBox信息框,显示正确答案,界面如下图。 请找出程序中的错误,并改正之。 PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click Dimx% x=Val(Label1.Text)\Val(Label3.Text) MsgBox("正确答案是: "&Str(x)) EndSub PrivateSubForm7_Load(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesMe.Load Randomize() Label1.Text=Int(Rnd()*100) Label3.Text=Int(Rnd()*99+1)‘***** EndSub 2.下面程序的功能是: 随机产生一个3位正整数在文本框内显示,单击“输出”按钮,弹出MsgBox信息框,将该正整数反序显示输出,界面如下图。 请找出程序中的错误,并改正之。 Dimx% PrivateSubForm8_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load Randomize() x=Int(Rnd()*900)+100 TextBox1.Text=x EndSub PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click Dima,b,c,y a=x\100 b=x\10Mod10 c=xMod10 y=cbay=c&b&a‘**** Ms
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 知识 项目 开发 二三大 结构