【文档说明】Visual-Basic程序设计-第四章.ppt,共(82)页,540.012 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-2467.html
以下为本文档部分文字说明:
第四章VB算法基础及基本语句主要内容_三种程序结构(顺序,分支,循环)_赋值语句_条件分支语句(共五种)笔记、作业、实验求两个自然数的最大公约数的算法(欧几里德算法)S1.输入两个自然数M、NS2.求M除以N的余数RS3.使M=N,即用N代换MS4.使N=R,即用R代换
NS5.若R≠0,则重复执行S2、S3、S4(循环),否则转S6S6.输出M,M即为M和N的最大公约数基本算法结构图顺序分支循环4.2.1赋值语句1、形式Var=<表达式>如:s=“Thisisaflower”Number%=72Text.font.s
ize=12Y=(a+b)/2作用:将表达式的值赋值给变量名。一般用于给变量赋值或对控件设定属性值。2.不同数据类型数据的赋值当表达式的类型与变量的类型不一致时,强制转换成左边的精度,如iA%=10/3iA中的结果为3注意:虽然赋值号与关系运算符“等号”都用“=”表示,VB系统会根据所处的
位置自动判断是何种意义的符号。注意点:P59-604.2.2InputBox函数InputBox函数作用:用来接受用户通过键盘输入的数据。形式:V=InputBox(Prompt[,Title][,Default][,x,y][,helpfile,context])其中:提示:提示信息;标题:
对话框标题;缺省:输入区缺省值函数返回字符类型。举例:下页PrivateSubForm_Click()PassWord=InputBox("输入你的口令:","程序示例")IfPassWord="123456"ThenPr
int"OK!"ElsePrint"Error!"EndIfEndSub函数返回值4.2.3MsgBox函数_作用:MsgBox函数用于向用户发布提示信息,并要求用户作出必要的响应。_形式是:MsgBox(
Prompt[,button][,title][,helpfile,context])P72c1的取值内置常量名意义0vbOkOnly只显示“确定”按钮1vbOkCancel显示“确定”和“取消”按钮2vbAbortRe
tryIgnore显示“终止”,“重试”和“忽略”按钮3vbYesNoCancel显示“是”,“否”和“取消”按钮4vbYesNo显示“是”和“否”按钮5vbRetryCancel显示“重试”和“取消”按钮c2的取值内置常量名意义16vbCritical显示关键信息图标32vbQ
uestion显示警示疑问图标48vbExclamation显示警告信息图标64vbInformation显示通知信息图标c3的取值内置常量名意义0vbDefaultButton1第一个按钮为缺省按钮256vbDefaultButton2第二个按钮为缺省按钮512vbDefaultBut
ton3第三个按钮为缺省按钮c4的取值内置常量名意义0vbApplicationModel应用程序模式,用户在当前应用程序继续执行之前,必须对信息框做出响应;信息框位于最前面4096vbSystemModel系统模式,所有应用程序均挂起,直到用户响应该信息框为止butto
n:这是一个由4个数值常量组成的式子,形式为c1+c2+c3+c4,PrintMsgBox("非法数据!",vbOKOnly+48+0,"提示信息")PrintMsgBox(“请输入X值!”,16+vbOK
Only,”ex4_6")MsgBox函数根据用户选择单击的按钮而返回不同的值:参见P63表4-3。按钮名内置常量取值OK(确定)vbOK1Cancel(取消)vbCancel2Abort(终止)vbAbort3Retry(重试)vbRetry4Ign
ore(忽略)vbIgnore5Yes(是)vbYes6No(否)vbNo7顺序结构4.3分支结构和分支结构语句结构示意图1、IF条件THEN一条语句2、if条件THEN语句组(多条语句)endif3、i
f条件then语句组1else语句组2endif4、if条件1then语句组1elseif条件2then语句组2elseif条件3then语句组3……[else语句组n]endif1.If…Then语句(单分支结构)If<表达式>Then语句块EndIf或If<表达式
>Then<语句>例:已知两个数x和y,比较它们的大小,使得x大于y.Ifx<yThent=xx=yy=tEndIf或Ifx<yThent=x:x=y:y=t重要的是学会两个数的交换,若上述语句次序变一下,结果如何?2.If…Then…El
se语句(双分支结构)If<表达式>Then<语句块1>Else<语句块2>EndIfIf<表达式>Then<语句1>Else<语句2>计算分段函数:yxxxxxxx=++−+=sincos231030单分支结构实现:y=cos(x)-x^3
+3*xIfx<>0Theny=sin(x)+sqr(x*x+1)双分支结构实现:Ifx<>0Theny=sin(x)+sqr(x*x+1)Elsey=cos(x)-x^3+3*xEndIf3.If…Then…
ElseIf语句(多分支结构)形式:If<表达式1>Then<语句块1>ElseIf<表达式2>Then<语句块2>…[Else语句块n+1]EndIfPrivateSubCommand1_Click(
)DimxAsIntegerx=Val(Text1.Text)Ifx<1ThenText2.Text=“小于1的数”ElseIfx<=10ThenText2.Text=“1到10之间”ElseText2.Text=”大于10的数”End
IfEndSub输入判断例已知变量strC中存放了一个字符,判断该字符是字母字符、数字字符还是其他字符。用多分支结构实现:不管有几个分支,依次判断,当某条件满足,执行相应的语句,其余分支不再执行;若条件都不满足,且有Else子句,则执行该语句块,否则什么也不执行。.ElseIf不能写
成ElseIf。IfUcase(strC)>="A"AndUcase(strC)<="Z"ThenPrintstrC+"是字母字符"ElseIfstrC>="0"AndstrC<="9"ThenPrintstrC
+"是数字字符"ElsePrintstrC+"其他字符"EndIf4.If语句的嵌套If语句的嵌套是指If或Else后面的语句块中又包含If语句。形式如下:If<表达式1>ThenIf<表达式11>Then…EndIf…EndIfTx>yTz为最小数T使得x>yFFFx>y>zx<y
x与y交换y<zy与z交换x<yx与y交换例:已知x,y,z三个数,使得x>y>z用一个IF语句和一个嵌套的IF语句实现Ifx<yThent=x:x=y:y=tIfy<zThent=y:y=z:z=tIfx<yThent=x:x=y:y=tEndIfEndIfIf语句的嵌套注意事项:书
写锯齿型;If与EndIf配对。5、Select-Case-EndSelect结构语句SelectCaseeCasec1A组语句Casec2B组语句...CaseElsen组语句EndSelecte称为测试表达式,c1,c2,...是测试项它们可取三种形式:(1)具体取值:如:3、5、7.2
等;(2)连续的数据范围:如:8To20;”B”To“H”等;(3)满足某个判决条件:如:Is>20;Is<="P"等。测试项还可以是这三中形式的组合,如4,7To9,Is>30表达式列表1……语句块1……语句块n+1……表达式列表2表达式列表n语句块
2语句块nTTTFFFPrivateSubCommand1_Click()DimxAsIntegerx=Val(text1.Text)SelectCasexCaseIs<1Text2.text="这是小于1的数"Case1To1
0Text2.Text="这是1到10之间的数"CaseElseText2.Text="这是大于10的数"EndSelectEndSub例变量strC中存放了一个字符,判断该字符类型。在前面例中用多分支结构实
现:IfUcase(strC)>="A"AndUcase(strC)<="Z"ThenPrintstrC+"是字母字符"ElseIfstrC>="0"AndstrC<="9"ThenPrintstrC+"是数字字符"ElsePrintstrC+"其他字符"EndIf用SelectC
ase语句实现:SelectCasestrCCase"a"To"z","A"To"Z"PrintstrC+"是字母字符"Case"0"To"9"PrintstrC+"是数字字符"CaseElsePrintstrC+"其他字符"EndSelectDimx
AsSingle,yAsSinglex=Val(Text1.Text)Ifx>=0Theny=1+xElsey=1-2*xEndIfText2.Text=y输入x,计算y的值。其中1+x(x≥0)Y=1-2x(x<0)思考题:1、学校对学
习成绩优良的学生进行奖励,获奖的条件如下:(1)所考5门课的成绩都在88分以上。(2)前3门(主课)的成绩都在95分以上,其他两门(非主课)的成绩都在80分以上。输入某学生5门课的成绩s1、s2、s3、s4、s5,判
断他是否能够获奖。2、利用输入框函数输入3个不同的数,选出其中最大的数。3、铁路托运行李,从甲地到乙地,规定每张客票托运费计算方法是行李重量不超过50kg时,0.25元/kg,超过50kg而不超过100kg时,其超过部分按0.35元/kg收费,超过100kg时,
其超过部分按0.45元/kg收费。编写程序,输入行李重量,计算并输出托运的费用。设行李重量为wkg,应付运费为x元,则运费公式为:0.25*w(w<=50)X=0.25*50+0.35*(w-50)(50<w<=100)0.25*50+0.35*50+0.45*(w-100)(w>100)4
、某百货公司为了促销,采用购物打折扣的优惠办法:每位顾客一次购物(1)在1000元以上者,按九五折优惠;(2)在2000元以上者,按九折优惠;(3)在3000元以上者,按八五折优惠;(4)在5000元以上者,按八折优惠;编写程序,输
入购物款数,计算并输出优惠价。5、已知两个变量x和y,比较它们的大小,使得x中的值大于y,下面那个方法能实现?Ifx<ythenA、x=y:y=xB、x=t:t=y:y=tC、t=y:y=x:x=tD、x=y:t=y:x=t常见错误1.在选择结构中缺少配对的结束语句对多行式的If块语句中,应有配对
的EndIf语句结束。2.多边选择ElseIf关键字的书写和条件表达式的表示ElseIf不要写成ElseIf;多个条件表达式次序问题。3.SelectCase语句的使用SelectCase后不能出现多个变量;Case子句后不能出现变量。例:已知百分制成绩mark
,显示对应的五级制成绩哪些正确,哪些错误?方法一Ifmark>=90ThenPrint"优"ElseIfmark>=80ThenPrint"良"ElseIfmark>=70ThenPrint"中"ElseIfmark>=60ThenPrint"及格"ElsePrint"不及格
"EndIf方法二Ifmark<60ThenPrint"不及格"ElseIfmark<70ThenPrint"及格"ElseIfmark<80ThenPrint"中"ElseIfmark<90ThenPrint"良"ElsePrint"优"EndIf方法三Ifma
rk>=60ThenPrint"及格"ElseIfmark>=70ThenPrint"中"ElseIfmark>=80ThenPrint"良"ElseIfmark>=90ThenPrint"优"ElsePrint"不及格"EndIf
例:已知坐标点(x,y),判断其落在哪个象限。方法一Ifx>0Andy>0ThenPrint"在第一象限"ElseIfx<0Andy>0ThenPrint"在第二象限"ElseIfx<0Andy<0ThenPrint"在第三象限"ElseIfx>0Andy<0ThenPrint"在第四
象限"EndIf方法二SelectCasex,yCasex>0Andy>0Print"在第一象限"Casex<0Andy>0Print"在第二象限"Casex<0Andy<0Print"在第三象限"Casex>0Andy<0Print
"在第四象限"EndSelect哪个能实现,哪个不能实现?方法二代码错误:1.SelectCase后不能出现多个变量;2.Case后不能出现变量及有关运算符。习题:1.下面程序运行后输出的结果是_____X=
Int(Rnd)+3Ifx^2>8theny=x^2+1Ifx^2=9theny=x^2-2Ifx^2<8theny=x^3Printy2.下面的程序段是检查输入的算术表达式中圆括号是否配对,并显示相应的结果。本程序在文本框输入表达式,边输入,边统计,以
输入回车符作为表达式输入结束,然后显示结果。Dimcount1%PrivateSubText1_KeyPress(KeyAsciiAsInteger)If__1__=“(”Thencount1=count1+1ElseIf__2__=“)”Then__3__EndIfIfKe
yAscii=13ThenIf__4__ThenPrint“左右括号配对”ElseIf__5__ThenPrint“左括号多于右括号”;count1;”个”ElsePrint“右括号多于左括号”;-count1;”个”EndIfEnd
IfEndSub四、循环结构及循环语句1、DO-LOOP语句及其对应的四种循环结构注意:`先判后做`先做后判保证:不多做一次,不少做一次!P68—P69DoWhile条件Do......[ExitDo][ExitDo]......LoopLoopWhile条件条件为TRUE——循环;条
件为FALSE——退出循环DoDoUntil条件......[ExitDo][ExitDo]...…LoopUntil条件Loop条件为FALSE——循环;条件为TRUE——退出循环在Do语句和Loop语句之间的语句即为循环体语句。ExitDo语句时,就会
直接退出本层循环,转而执行Loop语句的下一条语句。此语句最常用的形式是与If-Then语句相结合,即:IfeThenExitDo表达式列表1FTFTExitDo语句块语句块ExitDo语句块语句块表达式列表1求两个自
然数的最大公约数的算法(欧几里德算法)S1.输入两个自然数M、NS2.求M除以N的余数RS3.使M=N,即用N代换MS4.使N=R,即用R代换NS5.若R≠0,则重复执行S2、S3、S4(循环),否则转S6S6.输出M,M即为M和N的最大公约数PrivateSubC
ommand1_Click()Dimmaslong,naslong,rAsLongm=Val(Text1.Text)‘取数据Mn=Val(Text2.Text)‘取数据NIfm<>Int(m)orm<1orn<>Int(n)orn<1ThenText3.Text="数据错误!"ElseI
fm<nThent=m:m=n:n=tDo‘求最大公约数r=mModnm=nn=rLoopUntilr=0Text3.Text=CStr(m)‘输出最大公约数EndIfEndSub判断数据是否合法r=1Dountilr=0r=mModnm=nn
=rLoop求最大公约数Dor=mModnm=nn=rLoopUntilr=0r=1Dowhiler<>0r=mModnm=nn=rLoopDor=mModnm=nn=rLoopwhiler<>01234whiler<>
0whiler<>0例:我国有13亿人口,按人口年增长0.8%计算,多少年后我国人口超过26亿。PrivateSubCommand1_Click()x=13n=0DoWhilex<26x=x*1.008n=n+1LoopPrintn,xEndSub2、计数型循环语句一般形式是:Forv=
e1Toe2[Stepe3]...[ExitFor]...Nextvv是循环控制变量,应为整型或单精度型;循环体e1、e2和e3是控制循环的参数。e1为初值、e2为终值、e3为步长。当e3=1时,stepe3部分可以省略。For-Next循环结
构语句的执行方式_计算e1、e2和e3的值(如果e1、e2、e3为算术表达式);_给v赋初值;_进行判别:判别v是否超过e2,超过则退出循环,执行Next下一语句;_执行Next语句,系统执行下述操作:v增加一个步长,即执行v=v+e3,转而执行判别操作。_For-Next循环的正常循环次数
用下式计算:Int((e2-e1)/e3)+1循环变量<=终值语句块ExitFor语句块循环变量加步长TF循环变量得初值For-Next示例1、用For语句写程序,在一行上输出60个“*”号……Fori=1To60Print"*";NextI……PrivateSubForm_Click()For
i=1To10Step2Printi;NextiPrint"i=";iEndSub注意:PrintI与PrintI;的区别!例计算1~100的奇数和,程序段如下:Dimi%,s%S=0Fori=1To100step2s=s+
iNextiFor-Next示例1、求N!(N为自然数)由阶乘定义可知:N!=1*2*3*······*(N-2)*(N-1)*N=(N-1)!*Nk=1Fori=1Tonk=k*iNextik=1Fori=nTo1step-1k=k*iNextiFor-
Next示例控制变量的“初值”、“终值”和“步长”在进入For循环时,就被系统“记住”了,并不会因为循环体内对它的修改而影响循环执行的次数。例如:……x=2:y=8:z=3Fora=xToyStepzx=1:y=11:z=2Printa;Nexta……输出结果是:258循环体内虽然对x,y,
z重新赋值,但程序仍按原来设定的初值、终值和步长去运行ForI=1to10step2printI;nextiI=1doprintI;I=I+2loopuntilI>10分析:•两段程序的功能一样?•两种语句的特点?•那种较为合适?例:改变循环控制变量对循环的影响。Pr
ivateSubCommand1_Click()j=0Fori=1To20Step2i=i+3j=j+1Print"第";j;"次循环i=";iNextiPrint"退出循环后i=";iEndSub正常情况:i=1,3,5,7,9,11,13,15,17,19现在:i=4
,9,14,19❖在循环体内对循环控制变量可多次引用;但最好不要对其赋值,否则影响原来的循环控制规律。A=1:b=0Dowhilea<=5b=b+a*aa=a+1LoopPrinta,bDimchasstring,IasintegerCh=“DEF”ForI=1tolen
(ch)ch=mid(ch,2*I-1,1)&left(ch,len(ch))printchNexti关于循环嵌套一个循环体内又包含了一个完整的循环结构称为循环的嵌套.例:九九乘法表的实现。PrivateSubCo
mmand1_Click()Fori=1To9Forj=1To9se=i&"×"&j&"="&i*jPicture1.PrintTab((j-1)*9+1);se;NextjPicture1.PrintNextiEndSub执行本程序,图片框上将显示九九乘法表。换行!作用
?Forii=1To10Forjj=1To20…NextiiNextjjForii=1To10Forii=1To20…NextiiNextiiForii=1To10Forjj=1To20…NextjjNextiiForii=1To10…NextiiForii=1To10…N
extii对于循环的嵌套,要注意以下事项:▪内循环变量与外循环变量不能同名;▪外循环必须完全包含内循环,不能交叉;▪不能从循环体外转向循环体内,反之则可以。正确错误3、设计循环程序的关键_需要解决的问题有规律?哪个变?怎么变?
_确定控制变量;_了解两种循环语句的功能与特点,选择合适的循环语句。_保证不多做一次,不少做一次_尝试编写循环体语句_静态走一遍;结果?_调试….最后正确。其他辅助控制语句1.GoTo语句形式:GoTo{标号|行号}作用:无条件地转移到标号或行号指定的那行语句.标号是一
个字符序列,行号是一个数字序列.2.Exit语句多种形式:ExitFor、ExitDo、ExitSub、ExitFunction等。作用:退出某种控制结构的执行。3.End语句多种形式:End、EndIf、EndSelect、EndWith、EndType、
EndSub、EndFunction、作用:End结束一个程序的运行;其余表示某个结构的结束,与对应的结构语句配对出现。PrivateSubCommand1_Click()Dimintranum,i,j,aAsIntegerRandomize‘随机化语句Fori=1To1000in
tranum=Int(100*Rnd)+1‘产生1~100间随机数a=0Forj=1To10000‘延时a=a+1NextjText1.Text=CStr(intranum)Text1.Refresh‘文本框刷新NextiText1.Text=CStr(in
tranum)EndSub4、举例4.5常用算法算法是对某个问题求解过程的描述1.累加、连乘1~100的5或7的倍数的和Sum=0Fori=1To100IfiMod5=0OriMod7=0ThenSum=Sum+iEndIfNextiPrintSum3~10的乘积t=1Fo
ri=3To10t=t*iNextiPrintt思考:若把循环体前面置各变量初值的语句放在循环体内,程序运行时会产生什么情况?例:求自然对数e的近似值,要求其误差小于0.00001,近似公式为:该例题涉及两个问题:(1)用循环结构求级数和的问题。本例根据某项值的
精度来控制循环的结束与否。(2)累加:s=s+t循环体外对累加和的变量清零s=0连乘:n=n*i循环体外对连乘积变量置1n=1PrivateSubForm_Click()Dimi%,n&,t!,s!s=0:n=1‘s存放累加和、n存放阶乘i=0:t
=1‘i计数器、t第i项的值DoWhilet>0.00001s=s+t:i=i+1‘累加、连乘n=n*i:t=1/nLoopPrint"计算了";i;"项的和是";eEndSub==+=++++++=m1i0ii!11i!1...!1...3!1!211!11ei用以下公式计算s
in(x)的值。当最后一项的绝对值小于10-7时,停止计算。X的值由键盘输入。)!12()1()!32()1(!7!5!3)sin(121322753−−+−−++−+−=−−−−nxnxxxxxxnnnn分
析:设变量t用于存放中间项的计算结果,并且当第n项值<10-7时结束计算,即循环结束条件为t的绝对值<1E-7;可以把算法描述为:再看和式中第n项tn的值与第n-1项的递推关系:()()()()1222/11−−−==−nnxxxtttnnt=第1项值:s=t:n=1DoUntilAbs
(t)<1E-7n=n+1t=第n项值s=s+tLoop2.求素数素数是一个大于2,且不能被1和本身以外的整数整除的整数。判别某数m是否为素数最简单的方法是:对于m从i=2,3,…,m-1判别m能否被i整除,只要有一个能整除,m不是素数,否则m是素数。求100以内素数的代
码:PrivateSubCommand1_Click()DimIasinteger,masinteger,flagasbooleanForm=2To100flag=trueFori=2Tom-1If(mModi)=0Thenflag=falseNextiIfflagth
enPrintmNextmEndSub3.穷举法“穷举法”也称为“枚举法”或“试凑法”,即将可能出现的各种情况一一测试,判断是否满足条件,一般采用循环来实现。百元买百鸡问题。假定小鸡每只5角,公鸡每只2元,母鸡每只3元。现在有100元钱要求买100只鸡,编程列出所有可能的购鸡方案。
设母鸡、公鸡、小鸡各为x、y、z只,根据题目要求,列出方程为:x+y+z=1003x+2y+0.5z=100三个未知数,两个方程,此题有若干个解。解决此类问题采用“试凑法”,把每一种情况都考虑到。方法一:最简单三个未知数利用三重循环来实现。方法二:从
三个未知数的关系,利用两重循环来实现。PrivateSubForm_Click()dimxasinteger,yasinteger,zasintegerEndSub改进:Forx=0to33fory=0to50if3*x+2*y+0.5*(100-x-y)=100th
enprintx,y,100-x-yendifnextyNextxforx=0to100fory=0to100forz=0to100ifx+y+z=100and3*x+2*y+0.5*z=100thenprintx,y,zendifnextznextynextx4.递推法“
递推法”又称为“迭代法”,其基本思想是把一个复杂的计算过程转化为简单过程的多次重复。每次重复都从旧值的基础上递推出新值,并由新值代替旧值。猴子吃桃子。小猴在某天摘桃若干个,当天吃掉一半多一个;第二天吃了剩下的桃子的一半
多一个;以后每天都吃尚存桃子的一半多一个,到第7天要吃时只剩下一个,问小猴共摘下了多少个桃子?分析:这是一个“递推”问题,先从最后一天推出倒数第二天的桃子,再从倒数第二天的桃子推出倒数第三天的桃子……。设第n天的桃子为xn,那么它
是前一天的桃子数的xn-1的一半减1,即xn=(xn-1+1)×2PrivateSubForm_Click()dimnasinteger,Iasintegerx=1print“第7天的桃子数为:1只”forI=6to1step–1x=(x+1)*2print“第”;I;”天的桃子数
为:”;x;”只”nextiEndSub5.最小、最大值在若干个数中求最大值,一般先假设一个较小的数为最大值的初值,若无法估计较小的值,则取第一个数为最大值的初值;然后将每一个数与最大值比较,若该数大于最大值,将该数替换为最大
值;依次逐一比较。例随机产生10个100~200之间的数,求最大值。PrivateSubCommand1_Click()Max=100Fori=1To10x=Int(Rnd*101+100)Printx;Ifx>MaxThenMax=xNextiPrintPrin
t"最大值=";MaxEndSub实际应用,求最短残料。有一根长度为321米的钢材料,要将它截取成两种规格a、b的长度分别为17米和27米的短料,每种至少1段,问分隔成a,b各多少段后,剩余的残料r最少?分析,该题利用“试凑法”通过二重循环求残料r的最小值正数,
残料不可能是负数。程序如下:PrivateSubCommand1_Click()Dima%,b%,min!,ia%,ib%min=321‘最小值初值取钢材料的长度Forb=1To321\27‘b最多的段数Fora=1To
321\17‘a最多的段数t=321-b*27-a*17‘当前的残料Ift>0Andt<minThenmin=t‘求最短的残料ia=a‘最短残料时a的段数ib=b‘最短残料时b的段数EndIfNextaNe
xtbPrintia,ib,rEndSub二级真题练习阅读下面程序,单击窗体后在窗体上显示的内容是________,若将程序中的A语句与B语句的位置互换,再次执行程序,显示内容是________。(02春)OptionExplicitPrivateSubForm_C
lick()DimsumAsInteger,iAsIntegerFori=7To4Step-1SelectCaseiCase4,7sum=sum+i‘A语句Case3,5sum=sum+2‘B语句CaseElsesum=sum+1EndSelectNextiPr
int"sum=";sumEndSub执行以下语句后,a的值是______(02春)DimaAsIntegera=1DoUntila=100a=a+2LoopA、99B、100C、溢出D、101求出1
-100之内的所有勾股数(若a2+b2=c2,a,b,c为自然数,其中a<>b,则a,b,c称为一对勾股数)。编程题:练习题1、下列循环语句能正常结束的循环是_____。A、I=5doI=I+1loopuntilI<0B、I=1doI=I+2loopuntilI=10C、I=10doI=I
-2loopuntilI<0D、I=6doI=I-4loopuntilI=02、下面程序段运行结果为______。ForI=3to1step–1printspc(5-I);forj=1to2*I-1print“*”;nextjprintNe
xtiA、*********B、*********C、*********D、*********执行下面程序,当单击窗体时,显示在窗体上的第一行的内容是_______,第二行的内容是_______Privatesubform_click
()dimIasinteger,sumasintegerforI=0.5to8.5step2.5sum=sum+I*10nextIprintsumprintIEndsub3、执行下面程序,打印结果是_______。optionexpl
icitprivatesubform_click()dimIasinteger,jasintegerj=10forI=1tojstep2I=I+1j=j-inextIprintI,jendsub4、将一个正整数分解为质因数乘积。例如:234=2*3*3*13。Privatesu
bcommand1_click()dimn%,factor%,firstasbooleann=inputbox(“输入一个正整数”)factor=2first=truedodowhile____iffi
rstthenprintn;”=”;factor;elseprint“*”;factor;endif_____first=falseloopfactor=factor+1Loopuntilfactor>nEndsub