VB编程题及答案.docx
- 文档编号:28997729
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:34
- 大小:21.04KB
VB编程题及答案.docx
《VB编程题及答案.docx》由会员分享,可在线阅读,更多相关《VB编程题及答案.docx(34页珍藏版)》请在冰豆网上搜索。
VB编程题及答案
VB编程题
1、求100以内的素数。
2、从键盘输入任意长度的字符串,要求将字符顺序倒置,例如,将输入的“ABCDEFG”变换成“GFEDCBA”。
3、计算0~200之间所有能被11或5整除的数之和
4、输入一年份,判断它是否为闰年,并显示有关信息。
(判断闰年的条件是:
年份能被4整除但不能被100整除,或者能被400整除)
5、已知x,y,z3个变量中存放了3个不同的数,比较它们的大小并进行调整,使得x 6、求s=a+aa+aaa+...aaaaa(n个a),其中a和n的值随机产生,a的范围是[1,9]的整数,n的范围是[5,10]。 如a=3,n=6,则s=3+33+333+3333+33333+333333。 编程确定n和a的值,并计算s。 7、计算100~300之间所有能被3和7整除的数之和。 8、编程求200--400范围内5的倍数或7的倍数之和。 (一个数如果同时是7和5的倍数,则只能加一次。 ) 9、找出被3、5、7除,余数为1的最小的5个正整数。 10、某次歌曲大奖赛,有7个评委。 如果分别输入7个评委对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。 11、编程显示100~500之间所有的水仙花数之和。 (水仙花数是3位数,其各位数之和等于该数本身) 12、随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。 例如,产生246,输出是642。 13、从键盘输入三角形的三条边a,b,c的值,根据其数值,判断能否构成三角形。 14、已知数组a(),编程删除a中第5个元素。 数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。 15、随机生成一个整型的二维数组,范围在[10,20]之间,以上三角形式输出该数组。 16、利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出每行中的最大值和下标。 17、利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[40,80]内的整数,求它的最大值及所对应的下标。 18、输入一系列字符串,编程求出长度最大的字符串并输出其所对应的次序。 19、利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出该矩阵所有数据之和 20、输入一系列字符串,将字符串按递减次序排列。 请编程实现。 21、随机产生10个[30,100]内的整数,求最大值、最小值和平均值。 22、定义三个4×4的二维数组A,B,C,A和B中的元素均随机生成,数组A的范围是1~20,数组B的范围是100~200,数组C是A和B相乘得到的。 请编程生成并输出A,B,C。 23、随机产生15个小写字母,放在字符数组中。 提示: c=chr(int(rnd*26+97)) 24、随机产生10个[30,100]内的整数,求最大值及所对应的下标。 25、定义三个4×4的二维数组A,B,C,A和B中的元素均随机生成,数组A的范围是1~20,数组B的范围是100~200,数组C是A和B相加得到的。 请编程生成并输出A,B,C。 26、利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,求它的两条对角线上元素之和。 27、利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[40,80]内的整数,求它的最小值及所对应的下标。 28、随机生成一个整型的二维数组,范围在[10,20]之间,以下三角形式输出该数组。 29、有10个评委对歌手进行打分(分数存放在A数组中)要求编程计算歌手平均得分(按去掉一个最高分和一个最低分的计算办法计算)。 a=Array(98,97,95,91,90,99,93,94,93,96) 30、编程输出n行杨辉三角图形,n由键盘输入。 31、声明一个整型的二维数组a(1to4,1to4),用随机函数产生各元素,范围介于[1,20]之间,编程将第1行和第3行对应元素交换。 32、随机产生15个大写字母,放在字符数组中。 提示: c=chr(int(rnd*26+65)) 33、编写一个过程计算并输出区间[100,1000]内所有素数的和(要求判断素数使用过程(函数或子过程)来实现。 调用该过程。 (提示: 只能被1和自身整除的自然数称为素数。 ) 34、随机产生10个1~100的正整数放入数组,显示产生的数,求最大值、最小值、平均值。 35、已知一维数组a()中的元素已排序,分别为{12,15,21,25,27,35,36,39,48,52},编程将30插入数组a,并使a依然有序。 37、声明一个整型的二维数组a(1to4,1to4),用随机函数产生各元素,范围介于[1,20]之间,编程将第2行和第4行对应元素交换。 38、随机产生10个[30,100]内的整数,求最小值及所对应的下标。 39、编写一个判断素数的通用过程(函数或子程序)。 调用该过程,计算并输出区间[1000,1100]内所有素数的和。 (提示: 只能被1和自身整除的自然数称为素数。 ) 40、编一子过程ProcMin,求一维数组a中的最小值,子过程的形参自己确定。 41、编一个冒泡排序法子过程,对已知的若干整数按递减次序排列。 提示: 子过程的形式为subsort1(a%())。 42、编一个选择排序法子过程,对已知的若干整数按递减次序排列。 提示: 子过程的形式为subsort1(a%())。 43、编一个选择排序法子过程,对已知的若干整数按递增次序排列。 提示: 子过程的形式为subsort1(a%())。 44、编一个冒泡排序法子过程,对已知的若干整数按递增次序排列。 提示: 子过程的形式为subsort1(a%())。 45、编一个冒泡排序法子过程,对已知的若干整数按递增次序排列。 提示: 子过程的形式为subsort1(a%())。 VB答案 1、求100以内的素数。 .PrivateSubCommand1_Click() Dimi,a,k Fori=1To100 k=1 Fora=2ToSqr(i) IfiModa=oThenk=0 Nexta Ifk=1ThenPrinti; Nexti EndSub 2从键盘输入任意长度的字符串,要求将字符顺序倒置,例如,将输入的“ABCDEFG”变换成“GFEDCBA”。 . PrivateSubCommand1_Click() Dimi,a,b,nasstring n=InputBox("输入字符") i=Len(n) Fora=1Toi/2 b=Mid(n,a,1) Mid(n,a,1)=Mid(n,i+1-a,1) Mid(n,i+1-a,1)=b Nexta Printn EndSub 3.计算0~200之间所有能被11或5整除的数之和 PrivateSubCommand1_Click() Dimi%,sum sum=0 Fori=1To200 IfiMod5=0OriMod11=0Then sum=sum+i EndIf Nexti Printsum EndSub 4.输入一年份,判断它是否为闰年,并显示有关信息。 (判断闰年的条件是: 年份能被4整除但不能被100整除,或者能被400整除) PrivateSubCommand1_Click() Dimi% n=InputBox("输入年份n") i=0 IfnMod4=0AndnMod100<>0OrnMod400=0Then i=1 EndIf Ifi=1Then Printn&"为闰年" Else Printn&"为平年" EndIf EndSub 5.已知x,y,z3个变量中存放了3个不同的数,比较它们的大小并进行调整,使得x PrivateSubCommand1_Click() Dimx%,y%,z%,i x=Int(Rnd*100) y=Int(Rnd*100) z=Int(Rnd*100) Ifx>yThen i=x x=y y=i EndIf Ifx>zThen i=x x=z z=i EndIf Ify>zThen i=y y=z z=i EndIf Printx&"<"&y&"<"&z EndSub 6.求s=a+aa+aaa+...aaaaa(n个a),其中a和n的值随机产生,a的范围 是[1,9]的整数,n的范围是[5,10]。 如a=3,n=6,则s=3+33+333+3333+33333+333333。 编程确定n和a的值,并计算s。 PrivateSubCommand1_Click() Dimc(1To10),a%,n%,s#,i%,m# n=Int(Rnd*6+5) a=Int(Rnd*9+1) m=a c (1)=m Fori=1To10 c(i)=m m=10*m+a Nexti s=c (1)+c (2)+c(3)+c(4) Fori=5Ton s=s+c(i) Nexti Print"a="&a,"n="&n,"s="&s EndSub 7计算100~300之间所有能被3和7整除的数之和。 .PrivateSubCommand1_Click() Dims%,i% s=0 Fori=100To300 IfiMod3=0OriMod7=0Then s=s+i EndIf Nexti Print"s="&s EndSub 8编程求200--400范围内5的倍数或7的倍数之和。 (一个数如果同时是7和5的倍数,则只能加一次。 ) .PrivateSubCommand1_Click() Dims1%,s2%,s3%,i% s1=0 s2=0 Fori=200To400 IfiMod5=0OriMod7=0Then s1=s1+i EndIf Nexti Fori=200To400 IfiMod5=0AndiMod7=0Then s2=s2+i EndIf Nexti s3=s1-s2 Prints3 EndSub 9..找出被3、5、7除,余数为1的最小的5个正整数。 .PrivateSubForm_Click() Dimt% Fori=0To500 IfiMod5=1AndiMod7=1AndiMod3=1ThenPrinti; Nexti EndSub 10某次歌曲大奖赛,有7个评委。 如果分别输入7个评委 对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。 .PrivateSubCommand1_Click() Dima(6),imin! imax! i! j%,n%,t%,k%,f% a(0)=Val(InputBox("a(0)")) a (1)=Val(InputBox("a (1)")) a (2)=Val(InputBox("a (2)")) a(3)=Val(InputBox("a(3)")) a(4)=Val(InputBox("a(4)")) a(5)=Val(InputBox("a(5)")) a(6)=Val(InputBox("a(6)")) Fori=0To6 imin=i Forj=i+1To6 Ifa(j) Nextj t=a(i) a(i)=a(imin) a(imin)=t Nexti a(i-1)=0 Fork=0To6 imax=k Forf=k+1To6 Ifa(f)>a(imax)Thenimin=f Nextf t=a(k) a(k)=a(imax) a(imax)=t Nextk a(k-1)=0 n=(a(0)+a (1)+a (2)+a(3)+a(4)+a(5)+a(6))/5 Printn EndSub 11、题编程显示100~500之间所有的水仙花数之和。 (水仙花数是3位数,其各位数之和等于该数本身) PrivateSubForm_Click() Print"100~500之间所有的水仙花数为: " Dimx%,a%,b%,c% Forx=100To500 a=xMod10 b=(xMod100)\10 c=x\100 Ifx=a^3+b^3+c^3ThenPrintx Nextx EndSub 12题随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。 例如,产生246,输出是642。 : PrivateSubCommand1_Click() Text1=Int(Rnd*900+100) EndSub PrivateSubCommand2_Click() Dimx%,a%,b%,c% x=Val(Text1) a=xMod10 b=(xMod100)\10 c=x\100 Text2=a*100+b*10+c EndSub 13题从键盘输入三角形的三条边a,b,c的值,根据其数值,判断能否构成三角形 : PrivateSubForm_Click() Dima,b,c, a= b= c= Ifa+b>cAnda+c>bAndb+c>aThen MsgBox"能够成三角形" Else MsgBox"不能构成三角形" EndIf EndSub 14题已知数组a(),编程删除a中第5个元素。 数组a中的元素 分别为{12,6,4,89,75,63,100,20,31}。 PrivateSubForm_Click() Dima(),i%,j% a=Array(12,6,4,89,75,63,100,20,31) j=UBound(a) Fori=0Toj Printa(i) Nexti Print Fori=5Toj a(i-1)=a(i) Nexti j=j-1 ReDimPreservea(j) Fori=0Toj Printa(i) Nexti Print EndSub 15题随机生成一个整型的二维数组,范围在[10,20]之间,以上三角形式输出该数组。 Dima%(3,3) PrivateSubForm_Load() Fori=0To3 Forj=0To3 a(i,j)=Int(Rnd*11+10) Nextj Nexti EndSub PrivateSubPicture1_Click() Fori=0To3 Forj=iTo3 Tab(j*5);a(i,j); Nextj Nexti EndSub 16、利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出每行中的最大值和下标 Dima%(3,3),i%,k%,imax% PrivateSubcommand1_click() Fori=0To3 Forj=0To3 a(i,j)=Int(Rnd*31+20) a(i,j);""; Nextj Nexti imax=0 Fori=0To3 Forj=0To3 Ifa(i,imax) imax=0 EndIf Nextj "第";i+1;"行";"最大值为";a(i,imax);"下标为";"(";i;imax;")" Nexti EndSub 17..利用随机函数生成一个4×4的矩阵(即二维矩阵),范围是 [40,80]内的整数,求它的最大值及所对应的下标。 PrivateSubForm_Click() Dima(3,3),max%,imax% Fori=0To3 Forj=0To3 a(i,j)=Int(Rnd*41+40) Nextj Nexti Fori=0To3 Forj=0To3 Printa(i,j); Nextj Print Nexti Fori=0To3 Forj=0To3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 编程 答案