VB经典案例1输入3个数,输出最大的数X=val(text1)y=val(text2)z=val(text3)if x>=y thenif x>=z then print xelse print zend ifelse if y>=z then print yend if2有一元二次方程:aX2+bX+c=0,依次输入a,b,c,判断此方程是否有实根a=val(text1)b=val(text2)c=val(text3)If b*b-4*a*c>=0 then print “有实根”else print “无实根”end if3输入一个成绩,若大于等于60,则用消息框显示“恭喜!成绩通过!”,若小于60,则弹出消息框显示“抱歉!成绩没有通过!”N=val (text1)if n>=60 then msgbox”恭喜!成绩通过!”else msgbox “抱歉!成绩没有通过!”end if4输入一年份,判断它是否为闰年,并显示有关信息(判断闰年的条件是:年份能被4整除但不能被100整除,或者能被400整除)y=val(text 1)if y mod 4 =0 and y mod 100 = 0 then print “y是闰年” else print y “不是闰年’”end if5输入学生的百分制成绩,转换输出为五级制成绩,90~100分转换为优秀,80~89转换为良好,70~79转换为中等,60~69转换为及格,0~60转换为不及格。
If mark >=90 then grade= ‘优’else If mark >=80 then grade =‘良’else If mark >=70 then grade =‘中’else If mark >=60 then grade =‘及格’else grade=”不及格”6随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。
例如,产生246,输出是642。
n=int(r n d *900+100)dim x%,a%,b%,c%a=x mod 10b=int((x mod 100)/10)c=int(x/100 )print x;a*100+b*10+c7 输入两个整数,求它们的最大公约数。
Function gcd %(by val m%,by val n%)if m<n then t=m : m=n:n=tR= m mod ndo while (r< > 0)m=n : n=r :r= mod nloop gcd =nend function8 编程求200--400范围内5的倍数或7的倍数之和。
dim s%,i%s=0For i =200 to 400if i mod 5 =0 or i mod 7 =0 then s=s+iend ifnext iprint s9 计算100~300之间所有能被3和7整除的数之和dim s%,i%s=0for i=100 to 300If i mod 3 =0 and i mod 7 =0 then s=s+iend ifnext iprint “s=” &s10 分别统计1-100中,满足3的倍数、7的倍数的数各有多少。
Dim n1%,n2% ,i%n1=0:n2=0For i=1to 100if i mod 3=0 then n1=n1+1if i mod 7=0 then n2=n2+1next iprint n1,n211 某次歌曲大奖赛,有7个评委。
如果分别输入7个评委对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。
Dim a(6) as integer i%,max%,min%,sum%a(0)=val(text1.text) 省略 a(6)=val(text7.text)sum=a(0)+a(1)+a(2)+a(3)+a(4)+a(5)+a(6)max=a(0)min=a(0)for i =1 to 6 if min>a(i) then min=a(i)If max<a(i) then max=a(i)sum=sum+a(i)next iprint “平均分”;(sum-min -max)/512 输入一串字符,统计其中字母A出现的次数。
dim s$,i%,n%s=text1n=0for i=1 to len(s)c=mid(s,i,1)If c=”A” OR c=”a” then n=n+1print n13 我国目前有13亿人口,按人口年增长率0.8%计算,多少年后我国人口将超过26亿。
x=13n=0do while x<26x=x*1.008 n=n+1loopprint “年数为:”;n;”人数为:”;xm=log(2)/log(1.008)if int(m)<>m then m= int(m)+1print m14 小猴有桃若干,第一天吃掉一半多一个;第二天吃剩下桃子的一半多一个;以后每天都吃尚存桃子的一半多一个,到第7天只剩一个,问小猴原有桃多少Dim n%,i%x=1for i=6 to 1 step -1x =2*(x+1)next i15 求100以内的素数Dim m%,i%,tag as booleanfor m=3 to 100 step 2tag=truefor i=2 to m-1if m mod i=0 Then tag=falsenext iIf tag=true then print m&”是素数”else print m&”不是素数”End ifnext m16 百元买百鸡问题。
假定小鸡每只5角,公鸡每只2元,母鸡每只3元,编程求解购鸡案。
Dim x%,y%,z%,n%n=0print “母鸡”,”公鸡”,”小鸡’for x = 0 to 33for y=0 to 50Z=100-x-yn=n+1if 3*x+2*y+0.5*z=100 then print x,y,znext ynext x17 编程求斐波那契数列前11项。
(斐波那契数列:F(0)=f(1)=1, F(n)=F(n-1)+F(n-2) n>=2)Dim x( ) as integer dim i%n=16redim x(n-1)x(0)=1x(1)=1for i=2 to n-1X(i)=x(i-1)+x(i-2)next ifor i=0 to n-1print x(i),if (i+1)mod 5=0 then printnext18 将输入的字符串以反序显示。
例如:输入“ASDFGT”,显示“TGFDSA”Dim i,a,b, n as stringn=inputbox(“输入字符”)i=len(n)for a=1 to i/2b=mid(n,a,1)Mid(n,a,1)=mid(n,i+1-a,1)mid(n,i+1-a,1)=bnext aprint n19 随机产生10个[30,100]内的整数,求最大值及所对应的下标Dim a(0 to 9) as integer i% ,max%, imax%for i=0 to 9a(i)=int (r n d *71 +30)print a(i);next imax=a(0)imax=0for i = 1 to 9If a(i)> max then max =a(i):imax =inext iprint “max=”; max,”imax=”;imax20 随机产生10个[30,100]内的整数,求最大值、最小值和平均值。
Dim a(0 to 9) as integer i% ,max%, min% ,aver!for i=0 to 9a(i)=int (r n d *71 +30)Next imin=a(0)max=a(0)aver=a(0)for i=1 to 9if a(i)>max then max=a(i)If a(i)<min then main=a(i)aver=aver+a(i)next ifor i=0 to 9print a(i);next iprintPrint “max=”;max,”min=”;min, “aver=”;aver/1021 随机产生10个[30,100]内的整数,求最小值及所对应的下标。
Dim a(0 to 9) as integer i% ,min%, imin%for i=0 to 9a(i)=int (r n d *71 +30)print a(i);next imin=a(0)imin=0for i = 1 to 9If a(i)< min then min=a(i) : imin =inext iprint “min=”; min,”imin=”;imin22 随机生成一个整型的二维数组,范围在[10,20]之间,以下三角形式输出该数组。
Dim a(4,4) as integerfor i=0 to 4for j=0 to 4a(i,j)=int(r nd*11+10)next jnext iFor i=0 to 4for i=0 to 4print a(i,j);next jprintnext i23 随机产生10个1~100的正整数放入数组,显示产生的数,求最大值、最小值、平均值。
Dim a(1 to 10) as integer,i%,max%,min%,aver%for i=1 to 10a(i)=int(r n d*100+1)next iMin=a(1)max=a(1)aver=a(1)for i=2 to 10if a(i)>max then max=a(i)If a(i)<minthen Min=a(i)aver=aver+a(i)next iprintprint “max=”;max,”min=”;min,”aver=”;aver/1024 利用随机函数生成一个4×4的矩阵的二维矩阵,范围是[20,50]内的整数,输出该矩阵所有数据之和Dim a(2,3),sum%for i=0 to 3for j=0 to 3a(i,j)=int(r n d*31+20)next inext jFor i =0 to 3for j=0 to 3print a(i,j);next jprintnext ifor i=0 to 3for j=0 to 3Sum=sum+a(i,j)next jnext iprint ”sum=”;sum25已知有序数组a(),编程插入x(x的值为14)。