




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章 练习题程序阅读题1. 下面程序运行后的结果为 。7 x=Int (Rnd( )+3x = 3 If x2 8 Then y=x2+1 If x2=9 Then y=x2-2 这句是关键If x20 Print 左括号多于右括号; Count1; 个Else Print 右括号多于左括号; -Count1; 个End IfEnd IfEnd Sub4. 输入字符,统计有多少个元音字母,有多少其他字母,直到按了回车键结束并显示结果。大小写不区分。Dim County%, Countc% Private Sub Text1_KeyPress (KeyAscii As Integer) Dim c$C= .UCase(chr(keyascii) If A=C AND C=Z Then Select Case . C Case .A, E, I, O, U County=County+1 Case .Else Countc=Countc+1 End SelectEnd IfIf .Then keyascii=13 Print 元音字母有;County: 个 Print 其他字母有;Countc; 个End IfEnd Sub第四章 练习题单选题1. 以下( ) 式正确的FOR.NEXT 的结构。B(A)For x=1 To Step 10 (B)For x=3 To 3 Step -3. Next x Next x (C)For x=1 To 10 (D)For x=3 To 10 Step 3 Re: . . Next x Next yIf i=10 Then Goto Re2. 以下循环能正常结束的是( )。C(A) i=5 (B)i=1DoDo i=i+1 i=i+2 Loop Until i0Loop Until i=13. 下面程序运行的结果为( )。B For i=3 To 1 Step 1Print spc(5-i);For j=1 To 2*i-1 Print “*”;Next jPrint Next i(A) * (B) * (C) * (D) * * * * * * * *4. 当在文本框输入ABCD四个字符时候,窗体上显示的是( )。C Private Sub text1_change( )Print text1; 分号(;)光标定位在上一个显示的字符后End Sub(A)ABCD (B) A (C) AABABCABCD (D)A B AB C ABC D ABCD.9.10. 那个程序不能正确表示1!,2!,3!,4!的值( )。B(A) For i=1 To 4(B) For i=1 To 10 n=1 For j=1 To i For j=1 To i n=1 n=n*j n=n*j Next j Next j Print n Print nNext i Next i(D) n=1 (D) n=1 For j=1 To 4 j=1 n=n*jDo While j=4 Print n n=n*j Next j Print n j=j+1 Loop程序阅读题11. 要使下列FOR语句循环执行20次,循环变量的初值应当为 .。33 For k= .To -5 Step -2循环次数int(终值初值)/步长1)12. 下面程序段显示 .个“*”。10 For i=1 To 51+2+3+4,第一次循环没有进行 For j=2 To i Print “*” Next jNext i13. 以下程序运行后。 Si, Sj, Sk, i, j, k的结果分别为 .。3 6 1 4 4 4Private Sub Command1_Click( ) Si=0: Sj=0 For i=1 To 3 For j=1 To i Sk=0 For k=j To 3 Sk=Sk+1 Next k Sj=Sj+1 Next j Si=Si+1 Next i Print Si, Sj, Sk, i, j, kEnd Sub14. 下面程序运行后的结果为 .。2 20 3 21 4 22 5 23Private Sub Command1_Click( )此题关键是+和&运算符的使用 P48For i=0 To 3 Print Tab(4*i+1); 2 + i; 2 & i;Next iEnd Sub15. 程序运行结果 .。*$*$Private Sub Command1_Click( )a $= *: b $= $For i=1 To 4 If i Mod 2 = 0 Then x $= string ( len(a$) + i, b$ )Else x $= string( len(a$) +i, a$)EndIfPrint x$;Next iEnd Sub程序填空题16. 输入字符,要求将字符顺序倒置。 Private Sub Command1_Click( )此段程序采用的是折半交换法Mid(C,N1,N2)取字符串C中从第N1个字符开始向右取N2个字符,默认N2到结束, Dim a$, i%, c$, d$, n%a = InputBox$ (“input char”)n = .len(a)For i =1 To .n2 c = Mid(a, i, 1) Mid(a,i,1) = . Mid(a,n-i+1,1) . = cMid(a,n-i+1,1) Next iPrint a End Sub17. 找出被3,5,7除,余数为1的最小的5个正整数。Private Sub Command1_Click( )Dim Countn, nCountn=0n =1Don = n + 1 If . Then n Mod 3=1 And n Mod 5=1 And n Mod 7=1Print n Countn = Countn+1 End IfLoop .While Countn=x2(x是素数)Tag = Falsex = InputBox (input num)Do While Not Tag M=2: Tag= .True Do While Tag And (m nEnd Sub第五章 练习题程序阅读题1. 运行结果为 .。下标越界Dim aa = Array (1, 2, 3, 4, 5, 6, 7)For i = LBound (a) To UBound(a) LBound返回最小可用下标 a(i) = a(i) * a(i)UBound 返回数组上界下标Next iPrint a(i)此时i = UBound(a)+12. 运行结果为 .。 Option Base 11 2 32 3 13 2 3 Private Sub Command1_Click( )Dim a(3,3)For i =1 To 3 For j =1 To 3If j1 And i1 Then a (i, j) = a(a(i-1, j-1), a(i, j-1) + 1 Else a (i, j) = i * j End If Print a(i, j); ; Next jPrint Next iEnd Sub1 2 3 4 693. 运行结果为 .。Option Base 1Private Sub Command1_Click ( )Dim a, b (3, 3)a = Array (1, 2, 3, 4, 5, 6, 7, 8, 9 )For i =1 To 3 For j =1 To 3 b (i, j) = a (i*j) If (j=i) Then Print Tab(j*3); b(i,j);tab(n)是绝对偏移量,从该列的开头开始计算,移动n个字符的位置.spc(n)是相对偏移量.从光标处开始计算,移动n个字符的位置.space是插入多少个空格. Next j PrintNext i End Sub程序填空题4. 随机产生6位学生的分数(范围1100),存放在数组a中,以每2分一个“*”显示。如图:Private Sub Command1_Click( ) Dim a( 1 To 6) For i=1 To 6 a(i) = .Int(Rnd*100+1) 随机数通式:Int(Rnd*范围基数) Print .string(a(i)2,*); a(i) 注意分号的作用Next iEnd Sub5. 输出大小可变的正方形图案,最外圈是第一层,要求每层上用的数字与层数相同。 Option Base 1 强之声明下标从1开始 Private Sub Form_Click( )Dim a( )N = InputBox(input N) 本例N为9 .ReDim a(n, n)For i = ( ) 1 To (n+1)2 每一层图案上要显示的数字 For j = i To n i + 1 数组中元素存放对应的数字 For k = i To n i + 1本例是第一次是所有元素填1;第二次行列起点终点分别分别增加1和减少1,再填增大1的元素值,这时外层元素没有被重填,保留原来的值;依次执行下去。 .a(j, k)=i Next k Next jNext iFor i =1 To n For j =1 To n Print tab(j*3);a(i, j); Next j .Print Next iEnd Sub6. 在一维数组中利用移位的方法显示如图结果Private Sub Form_Click( )Dim a ( 1 To 7) For i =1 To 7 a(i) = i: Print a(i); Next i Print For i =1 To 7 t = .a(7)先把最后一个元素暂存在t For j = 6 To 1 .step 1从后向前,元素一次后移 .a(j+1)=a(j) Next j a (1) = t For j =1 To 7 Print a(j); Next jPrint Next iEnd Sub7. 矩阵转置(就是行列互换),矩阵的值为3080之间的随机值。Option Base 1Private Sub Command1_Click( ) Dim a%(2,3), b(3,2), i%, j%, n% N =5 For i =1 To 2For j=1 To 3 . a(i, j)=Int(Rnd*51+30) 赋初值 Print a(i, j) Next j Print Next i For i=1 To 3 For j=1 To 2 . b(i, j)=a(j, i) 转置 Print b(i, j); Next j Print Next iEnd Sub8. 下面程序将输入的一个数插入到按递减的有序数列中。插入后该序列仍有序。Private Sub Form_Click( ) Dim a, i%, n%, m% a =Array(19,17,15,13,11,9,7,5,3,2,1) n = Bbound(a) ReDim . preserve a(n+1) preserve保留原数组中的值 m = Val(InputBox(“输入想插入的数“) For i = Bbound(a)-1 To 0 step-1 If m=a(i) Then尚未找到合适的位置 .a(i+1)=a(i) If i = 0 Then a(i)=m已经到了数组首部,则直接插入 Else .a(i+1)=m Exit For EndIf Next i For i =0 To Bbound(a) Print a(i) Next iEnd Sub9. 冒泡法排序 Private Sub Form_Click( )Dim a, n%, j%, i%, ta = Array (19, 5, 15, 7, 11, 9, 23, 6, 3, 1)n = Ubound(a)For i = 0 To n-1For j=0 To n-i-1 If a(j) a(j+1) Then .t=a(j) .a(j)=a(j+1) a (j+1)=t EndIf Next jNext iFor i=0 To Ubound(a) Print a(i)Next i End Sub第六章 练习题单选题1. 设有下面的说明Public Sub F1(n%) . n=3*n+4 .End SubPrivate Sub Command11_Click ( ) Dim n%, m% n = 3 m = 4 . 调用F1语句 .End Sub下面是有效的调用是( )。B ?,全是正确的(A) F1 n+m (B) F1 m (C) F1 5 (D) F1 m+52. 下面子过程语句说明合法的是( )。D 定义不能嵌套,函数才能有返回值(A)Sub f1(ByVal n%() (B) Sub f1(n%) as integer(C)Function f1%(f1%) (D) Function f1(ByVal n%)3. 要想从子过程调用后返回两个结果,正确的是( )。C 缺省为传址 ByRef(A)Sub f2 (ByVal n%, ByVal m%)(B)Sub f1 (n%, ByVal m%) (C)Sub f1 (n%, m%)(D)Sub f2 (ByVal n%, m%)4. 下面程序运行后的结果是( )。A n是传址,m是传值Public Sub f1(n%, ByVal m%) n = n Mod 10 m = m 10End SubPrivate Sub Command1_Click( ) Dim x%, y% x = 12 y = 34 Call f1(x, y) Print x, yEnd Sub(A)2 34 (B) 12 34 (C) 2 3 (D) 12 35. 下面程序运行结果是( )。D 递归调用Private Sub Command1_Click( ) Print p1(3, 7)End SubPublic Function p1!(x!, n%)递归进入p1(3, 7) =3*9=27p1(3, 3) =3*3=9p1(3, 1) = 3*1=3p1(3, 0) =1递归返回 If n = 0 Then p1=1 ElseIf n Mod 2 =1 Then p1 = x * p1(x, n 2) Else p1 = p1(x, n 2) x EndIf EndIfEnd Function(A)18 (B) 7 (C) 14 (D) 276. 下面程序运行结果是( )。C 缺省为传址 ByRefDim a%, b%, c%Public Sub p1 (x%, y%) Dim c% x = 2 * x : y = y + 2 : c = x + yEnd SubPublic Sub p2 (x%, ByVal y%) Dim c% x = 2 * x : y = y + 2 : c = x + yEnd SubPrivate Sub Command1_Click( ) a = 2 : b = 4 : c = 6 Call p1(a, b) Print a=;a; b=;b; c=;c Call p2(a, b) Print a=; a; b=; b; c=;cEnd Sub(A)A=2 B=4 C=6 (B)A=2 B=6 C=10 A=4 B=6 C=10 A=8 B=8 C=16(C) A=4 B=6 C=6 (D) A=4 B=6 C=14 A=8 B=6 C=6 A=8 B=8 C=67. 下面程序运行结果是( )。B 静态变量将保留上一次的值Public Sub proc(a%( ) Static i% Do a(i) = a(i) + a( i + 1) i = i + 1 Loop while i2End SubPrivate Sub Command1_Click( ) Dim m%, i%, x%(10) For i=0 To 4 : x(i) = i + 1 : Next i For i=1 To 2 : call proc(x) : Next i For i=0 To 4 : Print x(i); : Next iEnd Sub(A)3 4 7 5 6 (B) 3 5 7 4 5 (C) 2 3 4 4 5 (D) 4 5 6 7 8程序阅读题8. 下面程序运行结果为 .? 函数功能为 .? 144 十进制数转化为R进制数Public Function f (ByVal n% , ByVal r%)用递归函数实现除R取整且倒序 If n0 Then f = f(nr,r) Print n Mod r; End IfEnd FunctionPrivate Sub Command1_Click( ) Print f (100,8)End Sub9. 下面程序运行结果为 .? 函数功能为 .? 6 辗转相减法求最大公约数Public Function f(m%, n%) Do while mn Do while mn : m=m-n : loop Do while nm : n=n-m : loop Loop f=mEnd FunctionPrivate Sub Command1_Click( ) Print f (24,18)End Sub程序填空题10. 两质数的差为2,称此对质数为质数对,下面程序找100之内的质数对,并成对显示结果。其中Isp函数判断参数m是否是质数。Public Function Isp(m) as BooleanDim i% 。Isp=TRUE首先假定m是素数For i =2 To Int(Sqr(m)如果能被整除,返回值为FALSE,表明为合数 If Then Isp=FALSEm mod i=0Next iEnd Function此语句是关键,与step 2相结合,可以防止值差2的数有其中有一个为合数而被输出 Private Sub Command11_Click ( ) Dim i P1 = isp(3) For i=5 To 100 Step 2P2 = isp(i)If Then Print i-2 iP1 and P2P1 .=P2 Next iEnd Sub11. 子过程Movestr( ) 是把字符数组移动m个位置,当Tag为True左移,则前m个字符移到字符数组尾,如:abcdefghij左移3个位置后为:defghijabc当Tag为false 右移,则后m个字符移到字符数组前. Public Sub movestr (a$( ), m%, tag As Boolean)Dim i%, j%, t$If . ThenTag 或者Tag = TrueFor i =1 To m依次将数组第一元素移到数组末尾,移动m次实现左移 . c=a(0)For j=0 To .Bbound(a)-1 a ( j ) = a ( j + 1) Next j . a(Bbound(a)=cNext iElse For i=1 To m 依次将数组最后元素移到数组首部,移动m次实现右移 .a(Bbound(a)=c For j = Bbound(a) To . 1 step -1 a (j) = a(j-1) Next j .a(0)=cEnd If End Sub第七章 练习题单选题1. 下列控件中,没有caption 属性的是( )。B(A)框架 (B) 列表框 (C) 复选框 (D) 单选按钮2. 复选框的value属性为1时,表示( )。B(A)复选框未被选中 (B) 复选框被选中(C) 复选框内右灰色的勾 (D) 复选框操作有错误3. 用来设置粗体字的属性是( )。C(A)FontItalic (B) FontName (C)FontBold (D) FontSize 4. 将数据项”china” 添加到列表框(List1)中成为第一项应使用( )语句。A(A)List1.Additem chian,0(B)List1.Additem china,1(C)List1.Additem 0, china(D)List1.Additem 1, china5. 引用列表框(List1)最后一个数据项应使用( )。B 下标从0至Listcount-1(A)List1.List(List1.Listcount)(B)List1.List(List1.Listcount-1)(C)List1.List(Listcount)(D)List1.List(Listcount-1)6. 假如列表框有4个数据项,那么把数据项china添加到列表框的最后,应使用( )语句。D(A)List1.Additem 3,china(B)List1.Additem china,List1.listcount-1(C)List1.Additem china,3(D)List1.Additem china,List1.listcount7. 运行下面程序,列表框中的数据项是( )。Dremove前1 2 3 4 5 6第一次remove1 3 4 5 6第二次remove1 3 5 6第三次remove1 3 5 Sub Form_Click( ) For i=1 To 6List1.additem i Next i For i=1 To 3List1.removeitem i Next iEnd Sub(A)1,5,6 (B)2,4,6 (C)4,5,6 (D)1,3,58. 如果列表框中没有被选定的项目,则执行List1.Removeitem List1.Listindex 语句的结果是( )。D(A)移去第一项 (B)移去最后一项(B) 移去最后假如列表的一项 (D) 以上都不对9. 假定时钟控件的Interval属性为1000,Enabled属性为True,并且有下面的事件过程,计算机将发出( )次Beep声。D 一秒钟发出10次Sub Timer1_Timer( ) For i =1 To 10 Beep Next iEnd Sub(A)1000 (B) 10000 (C) 10 (D) 以上都不对10. 下面说法正确的是( )。D(A)在程序运行期间时钟控件可显示在窗体上(B)在列表框中不能进行多项选择(C)在列表框中能够将项目按字母顺序从大到小排列(D)框架也有Click和 DblClick事件11. 文本框中有选定的文本,执行Text1.Seltext=hello的结果是( )。B(A)hello将替换原来的文本 (B)hello将插入到原来的文本之前(C)Text1.SelLength为5(D)文本框中只有hello12. 在用菜单编辑器设计菜单时,必须输入的项为( )。D(A)快捷键 (B) 标题 (C) 索引 (D) 名称13. 下面说法中,错误的为( )。B(A)每个菜单项都是一个控件,与其他控件一样也有自己的属性和事件(B)除了Click事件外,菜单项还能响应其他的如DblClick等事件(C)菜单项的快捷键不能任意设置(D)在程序执行时,如果菜单项的Enabled属性为False,则该菜单项变成灰色,不能被用户选择14. 在下列关于通用对话框的说法中,错误的为( )。D(A)CommonDialog1.ShowFont显示字体对话框(B)在打开或另存为对话框中,用户选择的文件名可以由FileTitle属性返回(C)在打开或另存为对话框中,用户选择的文件名及其路径可以由FileName属性返回(D)通用对话框可以用来制作和显示帮助对话框15. 以下正确的为( )。C(A)CommonDialog1.Filter=All Files|*.*|Pictures(*.Bmp)|*.Bmp(B)CommonDialog1.Filter=All Files|*.*|Pictures(*.Bmp)|*.Bmp(C)CommonDialog1.Filter=All Files|*.*|Pictures(*.Bmp)|*.Bmp(D)CommonDialog1.Filter=All Files|*.*|Pictures(*.Bmp)|*.Bmp16. 在窗体从内存卸载的过程中会发生很多事件,发生的顺序为( )。B(A)Terminate, QueryUnload, Unload(B)QueryUnload, Unload, Terminate(C)QueryUnload, Terminate, Unload(D)Unload, QueryUnload, Terminate17. 下面关于多重窗体的说法中,正确的为( )。B(A)作为启动对象的Main子过程只能放在窗体模块内(B)如果启动对象是Main子过程,则程序启动不加载任何窗体以后由该过程根据不同情况来定是否加载或加载哪一个窗体(C)没有启动窗体,程序不能执行(D)以上都不对18. 下列( )控件没有Min,Max和Value属性。D Slider滑动块控件 (A)Slider (B) ProgressBar (C) UpDown (D) SSTab SSTab选项卡控件19. 当Slider控件的Min属性为1,Max属性为40时,TickFrequency属性为4时,滑标上的可见刻度数是( ),划分了( )等分。A(A)11, 10 (B) 21, 20 (C) 31, 30 (D) 41, 40如果 KeyPreview
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 国际原油协议书
- 华为协议书栈
- 代缴股本协议书
- 高通端口协议书
- 房产放弃协议书
- 打井保水协议书
- 搬电池协议书
- 主播协议书仲裁
- rip协议书属于哪一层
- (2024年秋季版)七年级道德与法治下册 第三单元 主动了解社会 第11课 有序的社会 第2框 法律维序是保证说课稿 陕教版
- 2025年合肥市社会化工会工作者招聘34人笔试备考试题及答案解析
- 非婚生子女法律抚养权协议范本
- 2025年新版中层副职面试题及答案
- 蜂窝组织炎护理小讲课
- 智慧树知道网课《工业机器人技术基础》课后章节测试满分答案
- (一检)泉州市2026届高三高中毕业班质量监测(一)数学试卷(含标准答案)
- 纤维转盘滤布滤池运行维护技术说明
- 2025至2030中国无烟产品行业发展趋势分析与未来投资战略咨询研究报告
- 2021年全球工作场所状况报告 State of the Global Workplace 2021 Report
- 球墨铸铁管-施工方案(3篇)
- 2025年职业技能鉴定考试(考评员)经典试题及答案
评论
0/150
提交评论