程序设计 - 图文
更新时间:2024-01-25 13:11:01 阅读量: 教育文库 文档下载
- 程序设计基础是学什么推荐度:
- 相关推荐
程序设计 1、'【程序设计】
'-------------------------------------------------
'题目:(事件)单击窗体。
' (响应)求1!+2!+3!+4!+5!并将结果输出到窗体上。 ' 结果存入变量S中
'------------------------------------------------- Private Sub Form_Click() Dim s As Integer s = 0
'********* Program ************ Dim i,j As Integer j = 1
For i = 1 To 5 J = j * i
S = s + j Next i Print s
'********** End ***************** YZJ (s) End Sub
2、'【程序设计】
'-------------------------------------------------
'题目:判断一个数是否是素数。
'------------------------------------------------- Private Function Prime(ByVal m As Integer) As Boolean '********** Program ********* Dim i%
For i = 2 to m-1
If (m mod i) = 0 then Prime = false End if Exit for Next i
Prime = true
'********** End ************* End Function
Private Sub Form_Load() Dim m, i As Integer Show
m = Val(InputBox(\请输入一个数\ If Prime(m) = True Then Print \该数是素数\ Else
Print \该数不是素数\ End If WWJT
End Sub
3、'【程序设计】
'-------------------------------------------------
'题目:编写函数fun,函数的功能是:求1~1000以内能 '同时被m、n整除的数的总和并显示。如: 'm为15,n为11时,显示\'存储总和的变量必须为Sum '要求使用For语句来实现。
'------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码
'保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '-------------------------------------------------
Private Function fun(m As Integer, n As Integer) As Long Dim Sum As Long
'**********Program********** Dim i% Sum = 0
For i = 1 to 1000
If i mod m = 0 and i mod n =0 then Sum = sum + i End if Next i
'********** End ********** End Function
Private Sub Form_Load() Show
Print fun(15, 11) NJIT_VB End Sub(
4、事件)单击窗体。
' (响应)生成一个一维数组(10个数组元素依次为: ' 15、23、72、43、96、23、3、65、88、17), ' 写程序求出这个数组中的最大值、最小值和平 ' 均值,并输出在窗体上。
' 将最大值,最小值,平均值分别存入变量 ' Max,Min,Aver中
'------------------------------------------------- Private Sub Form_Click()
Dim max, min, aver As Integer
'*********** Program ********** Dim a(9) as integer Dim i,s as integer A(0) = 15 A(1)=23 A(2)=72 A(3)=43 A(4)=96 A(5)=23 A(6)=3 A(7)=65 A(8)=88 A(9)=17 Max=a(0) Min=a(0) S=0
For i = 0 to 9
If a(i) >max then Max = a(i) End if
If a(i) S =s + a(i) Next i Aver= int(s/10) Print (Cstr(max)) Print (Cstr(min)) Print (Cstr(aver)) '********** End ************** Call YZJ(max, min, aver) End Sub 4、 5、【程序设计】 '------------------------------------------------- '题目:(事件)双击窗体。 ' (响应)写程序解决百钱买百鸡问题:公鸡3元1只, ' 母鸡5元1只,小鸡一元3只,怎样用100元买 ' 100只鸡。要求每类鸡至少买1只。 ' 把每种买法输出到窗体上。 ' 将买法总数存放在变量N中 '------------------------------------------------- Private Sub Form_dblClick() Dim n As Integer n = 0 '******** Program ******* Dim i,j,k As Integer For i = 1 To 20 For j = 1 To 33 For k = 3 To 100 If ((k Mod 3) = 0) And ((i * 5 + j * 3 + k / 3) = 100) And ((i + j + k) = 100) Then Print (CStr(i)) Print (CStr(j)) Print (CStr(k)) n = n + 1 End If Next k Next j Next i '************ End *********** YZJ (n) End Sub 6、'------------------------------------------------- '【程序设计】 '------------------------------------------------- '题目:(事件)单击窗体。 ' (响应)求1+2+3+??+100的值,并把结果输出在窗体上。 ' 结果存入变量SUM中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer '******* Program ************ Dim i% For i = 1 to 100 Sum =sum + i Next i Print sum '******** End ************** YZJ (sum) End Sub 7、'题目:(事件)单击窗体。 ' (响应)输出斐波那契数列1,1,2,3,5,8,13...第20个 ' 数的值 ' 即 f1=1 (n=1) ' f2=1 (n=2) ' fn=f(n-1)+f(n-2)(n≥3) ' 使用for...next语句完成程序,并将结果 ' 存入变量sum中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer, f1 As Integer, f2 As Integer f1 = 1 f2 = 1 **************** Program ************** dim i as integer for i=1 to 9 f1=f1+f2 f2=f2+f1 next i print f2 sum=f2 '*************** End ************************* Call YZJ(sum) End Sub 8、'题目:(事件)双击窗体。 ' (响应)求s=1+1×2+1×2×3+?+1×2×3×?×10, ' 并将结果存到变量S中 '------------------------------------------------- Private Sub Form_dblClick() Dim s As Long '******** Program ******* Dim i, j As Integer Dim k As Long k = 1 s = 0 For i = 1 To 10 For j = 1 To i k = k * j Next j s = s + k k = 1 Next i Print (CStr(s)) '********* End ************ YZJ (s) End Sub 9、'题目:有一根长度为321米的钢材,要将它截取为两种规格的 '短料,两种规格的长度分别为a米、b米。每种至少一段。 '编写函数fun,函数的功能是: '求出分割成两种规格后剩余残料r最少的值,并显示。如: 'a为51、b为61时,则显示\ '要求使用For语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(a As Integer, b As Integer) As String '**********Program********** Dim r!, t! , m% , n% r = 321 For m = 2 To (321 - a) \\ b For n = 2 To (321 - b * m) \\ a t = 321 - n * b - m * a If t >= 0 And t < r Then r = t End If Next m Next n fun = r '********** End ********** End Function Private Sub Form_Load() Show Print fun(51, 61) NJIT_VB End Sub 10、'题目:(事件)单击窗体。 ' (响应)编写程序求10×11×12+11×12×13+?+15×16×17的结果, ' 并将结果输出到窗体上。 ' 将结果存入变量M中 '------------------------------------------------- Private Sub Form_Click() Dim m As Long '******** Program ************* Dim i, j As Integer Dim s As Long For i = 10 To 15 s = 1 For j = i To i + 2 s = s * j Next j m = m + s Next i Print (CStr(m)) '************ End *********** YZJ (m) End Sub 11、'题目:编写函数fun,函数的功能是:求一个 ' 四位数的各位数字的立方和 '------------------------------------------------- Private Function fun(n As Integer) As Long '********** Program ********* Dim d As Integer, k As Integer, s As Integer While n > 0 d = n Mod 10 s = s + d * d * d n = n / 10 Wend fun = s '********** End ************* End Function Private Sub Form_Load() Show Print fun(1112) WWJT End Sub 12、'题目:将一个十进制整数m转换成 →r(2-16)进制字符串。 '方法:将m不断除 r 取余数,直到商为零,以反序得到结果。 ' 下面写出一转换函数,参数idec为十进制数,ibase为要转 ' 换成数的基(如二进制的基是2,八进制的基是8等), ' 函数输出结果是字符串 '------------------------------------------------- Private Function TrDec(idec As Integer, ibase As Integer) As String '********** Program ********* Dim strDecR$, iDecR% strDecR = \ Do While idec <> 0 iDecR = idec Mod ibase If iDecR >= 10 Then strDecR = Chr$(65 + iDecR - 10) & strDecR Else strDecR = iDecR & strDecR End If idec = idec \\ ibase Loop TrDec = strDecR '********** End ************* End Function Private Sub Form_Load() Show Print TrDec(45, 2) WWJT End Sub 13、'题目: (事件)单击窗体。 ' (响应)输出100-200之间所有素数,并将这些数 ' 求和,求和结果存入所给变量SUM中。 '------------------------------------------------- '注意:请在指定的事件内编写代码。 '------------------------------------------------- '***************** Program ************** For i = 100 To 200 For j = 2 To Sqr(i) If i Mod j = 0 Then Exit For Next j If j > Int(Sqr(i)) Then Sum = Sum + i End If Next i Print Sum '*************** End ************************* YZJ (Sum) End Sub 14、'题目:求二维数组中最大元素及其所在的行和列 ' 并将最大值存入变量Max中,将最大值的行位置存入 ' row中,列位置存入变量column中. '------------------------------------------------- Private Sub Form_Load() Show Dim a(2, 3) As Integer Dim max As Integer, row As Integer, column As Integer a(1, 1) = 34: a(1, 2) = 34: a(1, 3) = 43 a(2, 1) = 34: a(2, 2) = 78: a(2, 3) = 12 '********** Program ********* Dim i As Integer, j As Integer max = a(1, 1): row = 1: column = 1 For i = 1 To 2 For j = 1 To 3 If a(i, j) > a(row, column) Then max = a(i, j) row = i column = j End If Next j Next i Print \最大元素是\ Print \在第\行,\第\列\ '********** End ************* WWJT max, row, column End Sub 15、(事件)单击窗体。 ' (响应)已知s=1+1/3!+1/5!+1/7!+1/9!,请将s结果值 ' 输出到窗体上。使用do while...loop语句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim p As Long ' p变量存放阶层的值 Dim s As Single '***************** Program ************** Dim i As Integer i = 1 p = 1 Do While i <= 9 p = p * i If i Mod 2 = 1 Then s = s + 1 / p End If i = i + 1 Loop Print s sum=s '*************** End ************************* Call YZJ(s) End Sub 16、'题目:(事件)双击窗体。 ' (响应)求1+2+3+5+8+13+??前20项的和,并将结果在窗体上输出。 ' 将结果存入变量SUM中 '------------------------------------------------- Private Sub Form_dblClick() Dim sum As Integer '*********** Program ************* Dim i As Integer Dim j(1 To 20) As Integer For i = 1 To 20 If i < 3 Then j(i) = i Else j(i) = j(i - 1) + j(i - 2) End If sum = sum + j(i) Next i Print sum '******** End **************** YZJ (sum) End Sub 17、'题目: (事件)单击窗体。 ' (响应)求出100以内所有素数的和,并将结果输出 ' 到窗体上,并存入所给变量SUM中。 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer '***************** Program ************** Dim i As Integer Dim j As Integer Dim k As Integer Dim b As Boolean b = False For i =2 To 100 b = False j = CInt(Sqr(i)) For k = 2 To j If i Mod k = 0 Then b = True End If Next k If b = False Then sum = sum + i End If Next i Print sum '*************** End ************************* Call YZJ(sum) End Sub 18、题目:应用选择法对数组A按升序排列 '基本思想: ' 1)对有n个数的序列(存放在数组a(n)中),从中 ' 选出最小的数,与第1个数交换位置; ' 2)除第1 个数外,其余n-1个数中选最小的数,与 ' 第2个数交换位置; ' 3)依次类推,选择了n-1次后,这个数列已按升序 ' 排列。 '------------------------------------------------- Private Sub Sort(ByRef a() As Integer, n As Integer) '********** Program ********* Dim i, j, imin, temp As Integer For i = 1 To n - 1 imin = i For j = i + 1 To n If a(imin) > a(j) Then imin = j Next j temp = a(i) a(i) = a(imin) a(imin) = temp Next i '********** End ************* End Sub Private Sub Form_Load() Show Dim i As Integer Dim arr(10) As Integer For i = 1 To 10 arr(i) = Int(10 * Rnd + 1) Next Sort arr, 10 For i = 1 To 10 Print arr(i) Next WWJT End Sub 19、'题目:编写函数fun,函数的功能是:判断一个数是否为素数。 '并显示相应提示。如: '该数为素数时,显示\素数\;该数为非素数时,显示\非素数\'要求使用For语句来实现,用布尔型变量flag作为该数 '是否为素数的标志,注意:不得使用Goto语句。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(m As Long) As String Dim flag As Boolean '**********Program********** flag = True For i = 2 To m - 1 If m Mod i = 0 Then flag = False Next i If flag = true Then fun = \素数\Else '********** End ********** End Function Private Sub Form_Load() Show Print fun(225) NJIT_VB End Sub 20、'题目:用inputbox函数输入商品购物总额,请用Select语 ' 句编程计算打折后的金额? '折扣方法如下: '购物300以下(含300),无优惠(使用MsgBox显示“无优惠”); '购物300以上(不含300),95折; '购物500以上(不含500),9折; '购物1000以上(不含1000),85折; '购物5000以上(不含5000),8 折。 ' '------------------------------------------------- Private Function Fun(n As Integer) As Integer '********** Program ********* Select Case n Case Is > 5000 n = n * 0.8 Case Is > 1000 n = n * 0.85 Case Is > 500 n = n * 0.9 Case Is > 300 n = n * 0.95 Case Else MsgBox \无优惠\End Select '********** End ************* Fun = n End Function Private Sub Form_Load() Dim TMoney As Integer TMoney = Val(InputBox(\输入购物总额:\ Me.Print \打折后的金额为:\ WWJT End Sub 21、题目:(事件)单击窗体。 ' (响应)输出一个如图所示的由数字组成的倒三角形 ' 请将结果存入变量S中(要求利用msgbox函数 ' 显示结果,使用for...next语句完成程序) '------------------------------------------------- Private Sub Form_Click() Dim s As String '***************** Program ************** Dim tmp As String Dim i As Integer, j As Integer tmp = \ For i = 10 To 1 Step -1 For j = 0 To i - 1 tmp = tmp & CStr(j) Next j tmp = tmp & vbCrLf Next i MsgBox tmp s = tmp '*************** End ************************* Call YZJ(s) End Sub 22、'题目:将一张面值为100元的人民币等值换成100张5元、 ' 1元和0.5元的零钞,要求每种零钞不少于1张, ' 问有哪几种组合?将组合数存入变量OUT中。 '------------------------------------------------- Private Sub Form_Load() Show Dim out As Integer '********** Program ********* Dim n As Integer Dim i%, j%, k% Print \For i = 1 To 20 For j = 1 To 100 - i k = 100 - i - j If 5# * i + 1# * j + 0.5 * k = 100 Then Print i, j, k n = n + 1 End If Next j Next i out = n '********** End ************* WWJT out End Sub 23、'题目:(事件)单击窗体。 ' (响应)编写代码功能如(图1)。 ' 将结果存入变量S中 '------------------------------------------------- '注意:请在指定的事件内编写代码。 '------------------------------------------------- Private Sub Form_Click() Dim s As Integer '************ Program ************ Dim i As Integer s = 1 For i = 1 To 10 s = s * i * i Next i Print (CStr(s)) '************ End **************** YZJ (s) End Sub 24、'题目:编写函数fun其功能是:根据整型形参m, '计算如下公式的值: ' y=1+1/3+1/5+1/7+...+1/(2m+1) ' 例如:若m=9,则应输出:2.133256 '------------------------------------------------- Private Function fun(m As Integer) As Single Dim y As Double '********** Program ********* Dim i As Integer y = 1 For i = 1 To m y = y + 1 / (2 * i + 1) Next i fun = y '********** End ************* End Function Private Sub Form_Load() Show Print fun(9) WWJT End Sub 25、 '题目:已知,猴子吃一堆桃子,每天吃桃子总数的一半多一个。 '到第n天时,桃子只剩一个。编写函数fun,函数的功能是: '求出开始桃子的数量并显示。如: 'n为7时,则显示\'要求使用For语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(n As Long) As String '**********Program********** x = 1 For i = 1 To n - 1 x = (x + 1) * 2 Next i fun = x '********** End ********** End Function Private Sub Form_Load() Show Print fun(7) NJIT_VB End Sub 26、(事件)单击窗体。 ' (响应)求200~300之间既能被3整除又能被7整除的数。 ' 并求出所有数之和存入变量SUM中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer sum = 0 '***************** Program ************ Dim i As Integer For i = 201 To 300 If ((i Mod 3) = 0) And ((i Mod 7) = 0) Then Print (CStr(i)) sum = sum + i End If Next i Print sum '*************** End ****************** YZJ (sum) End Sub 27、(事件)双击窗体。 ' (响应)求1+5+10+15+……+500的和,并将结果输出到窗体上。 ' 将结果存入变量SUM中 '------------------------------------------------- Private Sub Form_dblClick() Dim sum As Long sum = 1 '******* Program ********** Dim i As Integer For i = 1 To 500 If i Mod 5 = 0 Then sum = sum + i End If Next i Print sum '******* End ************ YZJ (sum) End Sub 28、(事件)单击窗体。 ' (响应)求一个数,它除3余2,除5余3,除7余2, ' 请将满足上面条件的最小数保存到sum变量中。 ' 使用for...next语句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer '***************** Program ************** Dim i As Integer For i = 2 To 1000 If i Mod 3 = 2 And i Mod 5 = 3 And i Mod 7 = 2 Then Print i Exit For End If Next i sum = i '*************** End ************************* Call YZJ(sum) End Sub 29、 (事件)单击窗体。 ' (响应)已知sum=1-1/4+1/9-1/16+1/25...-1/100, ' 请将sum结果值输出到窗体上。 ' 使用for...next语句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim sum As Single '***************** Program ************** dim i As Integer for i = 1 to 10 sum = sum + (-1) ^ (i - 1) /(i*i) next Print sum '*************** End ************************* Call YZJ(sum) End Sub 30、(事件)单击窗体。 ' (响应)求50以内所有偶数的和,并在窗体上输出出来。 ' 将结果存入变量S中 '------------------------------------------------- Private Sub Form_Click() Dim s As Integer '******** Program ********* Dim i As Integer For i = 2 To 50 If (i Mod 2) = 0 Then s = s + i End If Next Print (CStr(s)) '********* End *********** YZJ (s) End Sub 31、编写函数fun,函数的功能是:求从m到n的奇数的乘积并显示, '如:m为2,n为5时,显示\'存储连乘的乘积的变量必须为Product '要求使用For语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(m As Integer, n As Integer) As Long Dim Product As Double, t As Integer If m > n Then t = m: m = n: n = t '**********Program********** Product = 1 For i = m To n If i Mod 2 <> 0 Then Product = Product * i Next i fun = Product '********** End ********** End Function 32、编写函数fun,函数的功能是:求1~100以内 '能被m整除或能被n整除的数的总和并显示。如: 'm为15,n为11时,显示\'存储总和的变量必须为Sum '要求使用For语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(m As Integer, n As Integer) As Long Dim Sum As Long '**********Program********** Sum = 0 For i = 1 To 100 If i Mod m = 0 Or i Mod n = 0 Then Sum = Sum + i End If Next i fun = Sum '********** End ********** End Function Private Sub Form_Load() Show Print fun(15, 11) NJIT_VB End Sub 33、(事件)单击窗体。 ' (响应)已知S=1+1/4+1/9+1/16+1/25+…+1/100, ' 结果输出在窗体上。 '------------------------------------------------- Private Sub Form_Click() Dim s As Single '************* Program ************** Dim i As Integer s = 0 For i = 1 To 10 s = s + 1 / (i ^ i) Next Print (s) '************* End ************** YZJ (s) End Sub 34、有一根长度为200米的钢材,要将它截取为两种规格的 '短料,两种规格的长度分别为a米、b米。每种至少两段。 '编写函数fun,函数的功能是: '求出分割成两种规格后剩余残料r最少的值,并显示。如: 'a为31、b为41时,则显示\'要求使用For语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(a As Integer, b As Integer) As String '**********Program********** Dim r!, t! , m% , n% r = 200 For m = 2 To (200 - a) \\ b For n = 2 To (200 - b * m) \\ a t = 200 - n * b - m * a If t >= 0 And t < r Then r = t End If Next m Next n fun = r '********** End ********** End Function Private Sub Form_Load() Show Print fun(31, 41) NJIT_VB End Sub 35、在窗体上添加一个命令按钮和一个Pictrue控件,请 ' 编写command1_click事件的代码,在Pictrue控件 ' 按以下图格式输出乘法九九表。 '------------------------------------------------- '注意:请在指定的事件内编写代码。 '------------------------------------------------- '***************** Program ************** 没有图 ,不好做。下面是顺三角式九九乘法表的代码。 Private sub command1_click() Din i%,j% Dim expss as string For i =1 TO 9 For j=1 to i Expss = i & ”*” & j & ”=” & i * j Picture1.print tab((j-1)*10+1); expss Next j Picture1.print Next i End sub '*************** End ************************* End Sub 36、(事件)单击窗体。 ' (响应)已知sum=-1!+1/2!-1/3!+1/4!...+1/10!, ' 请将sum结果值输出到窗体上。 ' 使用do while...loop语句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim p As Long 'p变量存放阶乘的值 Dim sum As Single '***************** Program ************** Dim i As Integer i = 1 p = 1 S = 0 Do While i <= 10 p = p * i s = s + (-1 ) ^i*(1 / p ) i = i + 1 Loop Print s sum=s '*************** End ************************* Call YZJ(sum) End Sub 37、(事件)单击窗体。 ' (响应)我国现有人口为13亿,设年增长率为1%, ' 计算多少年后增加到20亿。并将结果输出 ' 在窗体上。将结果存入变量year中。 ' 使用do while ...loop语句完成程序。 '------------------------------------------------- Private Sub Form_Click() Dim year As Integer '***************** Program ************** dim p as double dim r as single dim n as integer p=1300000000 r=0.01 do while p<2000000000 p=p+p*r n=n+1 loop print \year=n '*************** End ************************* Call YZJ(year) End Sub 38、 (事件)单击窗体。 ' (响应)求从100到1000之间所有是3的倍数的数之 ' 和,当和大于3000时,停止计算并输出和。请将结果输 ' 出到窗体上,并存入所给变量SUM中。使用for...next语 ' 句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer '***************** Program ************** Dim i As Integer sum=0 for i=100 to 1000 if i mod 3=0 then sum=sum+i if sum>3000 then exit for End if End if i=i+1 next i Print sum '*************** End ************************* Call YZJ(sum) End Sub 39、:编写函数fun,函数的功能是:计算两个正整数的 '最大公约数,并显示。如: '两个数为15、20,结果显示\'要求使用Do ... Loop语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(m As Integer, n As Integer) As Integer Dim r% If m > n Then r = m: m = n: n = r '**********Program********** R=n mod m Do While (r <> 0) n = m m= r r = n Mod m Loop fun = m '********** End ********** End Function Private Sub Form_Load() Show Print fun(15, 10) NJIT_VB End Sub 40、(事件)单击命令按钮Command1,在指定的函数中编写。 ' (响应)找出5个整数序列中的最大数与最小数,最大 ' 数显示在Text1中,最小数显示在Text2中, ' 并以升序重新排列这5个数。并显示在Label4中。 ' 窗体格式如图1所示。 '------------------------------------------------- '注意:请在指定的事件内编写代码。 '------------------------------------------------- Option Explicit Option Base 1 Dim a(5) As Integer Private Sub MaxAndMin() '5个整数都保存在数组a中 '**********Program********** Dim i%,j%,t%,max%,min% Max=a(1) Min=a(1) For i = 1 to 5 If max < a(i) then max = a(i) If min > a(i) then min = a(i) Next i Text1.text=max Text2.text=min For i = 1 To 5 For j = i + 1 To 5 If a(i) > a(j) Then t = a(i) a(i) = a(j) a(j) = t End If Next j Next i For i = 1 To 5 s = s + Str(a(i)) Next i Label4.Caption = s '********** End ********** End Sub Private Sub Command1_Click() a(1) = 97: a(2) = 88: a(3) = 5: a(4) = 95: a(5) = 36 MakeNumber MaxAndMin WWJT Text1.Text, Text2.Text End Sub Private Sub MakeNumber() Dim i As Integer Dim s As String For i = 1 To 5 s = s + Str(a(i)) Next i Label3.Caption = s End Sub Private Sub Form_Load() Label3.FontSize = 18 Label4.FontSize = 18 Text1.FontSize = 18 Text2.FontSize = 18 41'题目:求二维数组中最大元素及其所在的行和列 ' 并将最大值存入变量Max中,将最大值的行位置存入 ' row中,列位置存入变量column中. '------------------------------------------------- Private Sub Form_Load() Show Dim a(2, 3) As Integer Dim max As Integer, row As Integer, column As Integer a(1, 1) = 34: a(1, 2) = 34: a(1, 3) = 43 a(2, 1) = 34: a(2, 2) = 78: a(2, 3) = 12 '********** Program ********* Dim i As Integer, j As Integer max = a(1, 1): row = 1: column = 1 For i = 1 To 2 For j = 1 To 3 If a(i, j) > a(row, column) Then max = a(i, j) row = i column = j End If Next j Next i Print \最大元素是\ Print \在第\行,\第\列\ '********** End ************* WWJT max, row, column End Sub 42题目:(事件)单击窗体。 ' (响应)在窗体上打印数列2/1,3/2,5/3,8/5,13/8? ' 的前10项,并求其和,将和保存在变量s中 '------------------------------------------------- Private Sub Form_Click() Dim s As Single '******** Program *********** Dim i, j, k, m As Integer s = 0 :i = 2:j = 1 For k = 1 To 10 s = s + i / j m = j Print (CStr(i)) & \ j = i i = i + m Next k '********* End **************** YZJ (s) End Sub 43题目:(事件)单击窗体。 ' (响应)输出斐波那契数列1,1,2,3,5,8,13...第20个 ' 数的值 ' 即 f1=1 (n=1) ' f2=1 (n=2) ' fn=f(n-1)+f(n-2)(n≥3) ' 使用for...next语句完成程序,并将结果 ' 存入变量sum中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer, f1 As Integer, f2 As Integer f1 = 1 f2 = 1 '***************** Program ************** dim i as integer for i=1 to 9 f1=f1+f2 f2=f2+f1 next i print f2 sum=f2 '*************** End ************************* Call YZJ(sum) End Sub 44题目:(事件)单击窗体。 ' (响应)输出斐波那契数列1,1,2,3,5,8,13...第20个 ' 数的值 ' 即 f1=1 (n=1) ' f2=1 (n=2) ' fn=f(n-1)+f(n-2)(n≥3) ' 使用for...next语句完成程序,并将结果 ' 存入变量sum中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer, f1 As Integer, f2 As Integer f1 = 1 f2 = 1 '***************** Program ************** dim i as integer for i=1 to 9 f1=f1+f2 f2=f2+f1 next i print f2 sum=f2 '*************** End ************************* Call YZJ(sum) End Sub 45题目:(事件)单击窗体。 ' (响应)输出斐波那契数列1,1,2,3,5,8,13...第20个 ' 数的值 ' 即 f1=1 (n=1) ' f2=1 (n=2) ' fn=f(n-1)+f(n-2)(n≥3) ' 使用for...next语句完成程序,并将结果 ' 存入变量sum中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Integer, f1 As Integer, f2 As Integer f1 = 1 f2 = 1 '***************** Program ************** dim i as integer for i=1 to 9 f1=f1+f2 f2=f2+f1 next i print f2 sum=f2 '*************** End ************************* Call YZJ(sum) End Sub 46'题目:(事件)单击窗体。 ' (响应)一球从100米高度自由落下,每次落地返回 ' 原高度的一半,求第10次落地时,共经过多 ' 少米?并将结果在窗体上输出。 '------------------------------------------------- Private Sub Form_Click() Dim s As Single '********* Program ************* Dim j,i As Integer s=0 j=100 For i = 2 To 10 j=j / 2 s=s+2*j Next i s=100+s Print(CStr(s)) '********* End *************** YZJ (s) End Sub 47'------------------------------------------------- '题目:(事件)单击窗体。 ' (响应)编写代码功能如(图1)。 ' 将结果存入变量Sum中。使用while...wend语句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim sum As Double '***************** Program ************** Dim i As Integer sum = 0 For i = 1 To 10 sum = sum + i ^ i Next i Print (CStr(sum)) '*************** End ************************* Call YZJ(sum) End Sub 48'题目:(事件)单击窗体。 ' (响应)求10!的值,并将结果输出到窗体上。 ' 将结果存入变量SUM中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Long '********* Program ********* Dim i As Integer sum = 1 For i = 1 To 10 sum = sum * i Next i Print sum '************ End ************ YZJ (sum) End Sub 49'题目:对字符串进行加密处理。 ' 加密过程: ' 将每个字母C加一序数K=5,即 c=chr(Asc(c)+5), ' 这时 \→\, \→\,\→\? ' 当加序数后的字母大于\或\则 c=Chr(Asc(c)+k -26) '------------------------------------------------- Private Function EnyStr(strI As String) As String '********** Program ********* Dim i As Integer Dim strp As String, strT As String, iA As String Dim nl As String i = 1: strp = \ nl = Len(RTrim(strI)) Do While (i <= nl) strT = Mid$(strI, i, 1) If (strT >= \Then iA = Asc(strT) + 5 If iA > Asc(\Then iA = iA - 26 strp = strp + Chr$(iA) ElseIf (strT >= \ iA = Asc(strT) + 5 If iA > Asc(\strp = strp + Chr$(iA) Else strp = strp + strT End If i = i + 1 Loop EnyStr = strp '********** End ************* End Function 50。'题目:(事件)单击窗体。 ' (响应)求出1000-9999之间具有如下特点的四位数字, ' 它的平方根恰好就是它中间的两位数字,例如, ' 2500开平方为50,恰为2500的中间两位,找出 ' 所有这样的四位数。并求出所有这样的数的和 ' 存入SUM中 ' '------------------------------------------------- Dim sum As Integer sum = 0 '******** Program ******* Dim i As Integer Dim j As Integer For i = 1000 To 9999 j= Val(Mid(Trim( Str(i)), 2, 2)) If j ^ 2 = i Then Print i, sum = sum + i End If Next i '********** End ********** YZJ (sum) End Sub 51'题目:编写函数fun,函数的功能是:当x的初值为10, '每年增长率为千分之八,计算多少年以后x的值能达到y, '并显示所需年数的值(变量名必须为n)。 '要求使用Do While ... Loop语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(y As Single) As Long Dim x As Single, n As Long '**********Program********** x = 10 n = 0 Do While x < y x = x * 1.008 n = n + 1 Loop fun = n '********** End ********** End Function Private Sub Form_Load() Show Print fun(15) NJIT_VB End Sub 52'题目::编写函数fun其功能是:判断一个整数w的各位 ' 数字平方之和能否被5整除 , 可以被5整除则返 ' 回1 , 否则返回0 '------------------------------------------------- Private Function fun(w As Integer) As Boolean '********** Program ********* Dim k As Integer, s As Integer Do s = s + (w Mod 10) * (w Mod 10) w = Int(w / 10) Loop While w <> 0 If s Mod 5 = 0 Then k = 1 Else k = 0 End If fun = k '********** End ************* End Function Private Sub Form_Load() Show Print fun(50) WWJT End Sub 53'题目:求二维数组中最大元素及其所在的行和列 ' 并将最大值存入变量Max中,将最大值的行位置存入 ' row中,列位置存入变量column中. '------------------------------------------------- Private Sub Form_Load() Show Dim a(2, 3) As Integer Dim max As Integer, row As Integer, column As Integer a(1, 1) = 34: a(1, 2) = 34: a(1, 3) = 43 a(2, 1) = 34: a(2, 2) = 78: a(2, 3) = 12 '********** Program ********* Dim i As Integer, j As Integer max = a(1, 1): row = 1: column = 1 For i = 1 To 2 For j = 1 To 3 If a(i, j) > a(row, column) Then max = a(i, j) row = i column = j End If Next j Next i Print \最大元素是\ Print \在第\行,\第\列\ '********** End ************* WWJT max, row, column End Sub'----------------------------------------- 54'题目:(事件)单击窗体。 ' (响应)编写代码功能如(图1)。 ' 将结果存入变量Sum中。使用while...wend语句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim sum As Double '***************** Program ************** 没有图?是求1到100中为5或7的倍数的和 While I mod 5 =0 or I mod 7 =0 I<100 S=s+i Wend Print s '*************** End ************************* Call YZJ(sum) End Sub Private Sub YZJ(i As Double) Dim OUT As Integer OUT = FreeFile Open App.Path & \ Print #OUT, i Close #OUT End Sub---------------------------------------------- 55'题目:将一个十进制整数m转换成 →r(2-16)进制字符串。 '方法:将m不断除 r 取余数,直到商为零,以反序得到结果。 ' 下面写出一转换函数,参数idec为十进制数,ibase为要转 ' 换成数的基(如二进制的基是2,八进制的基是8等), ' 函数输出结果是字符串 '------------------------------------------------- Private Function TrDec(idec As Integer, ibase As Integer) As String '********** Program ********* Dim strDecR$, iDecR% strDecR = \ Do While idec <> 0 iDecR = idec Mod ibase If iDecR >= 10 Then strDecR = Chr$(65 + iDecR - 10) & strDecR Else strDecR = iDecR & strDecR End If idec = idec \\ ibase Loop TrDec = strDecR '********** End ************* End Function Private Sub Form_Load() Show Print TrDec(45, 2) WWJT End Sub Private Sub WWJT() '------------------------------------------------- 56'题目:将一个十进制整数m转换成 →r(2-16)进制字符串。 '方法:将m不断除 r 取余数,直到商为零,以反序得到结果。 ' 下面写出一转换函数,参数idec为十进制数,ibase为要转 ' 换成数的基(如二进制的基是2,八进制的基是8等), ' 函数输出结果是字符串 '------------------------------------------------- Private Function TrDec(idec As Integer, ibase As Integer) As String '********** Program ********* Dim strDecR$, iDecR% strDecR = \ Do While idec <> 0 iDecR = idec Mod ibase If iDecR >= 10 Then strDecR = Chr$(65 + iDecR - 10) & strDecR Else strDecR = iDecR & strDecR End If idec = idec \\ ibase Loop TrDec = strDecR '********** End ************* End Function Private Sub Form_Load() Show Print TrDec(45, 2) WWJT End Sub------------------------------------------------ 57'题目:编写函数fun其功能是:根据整型形参m, ' 计算如下公式的值: ' y=1/5+1/6+1/7+1/8+1/9+1/10...+1/(m+5) ' 例如:若m=9,则应输出:1.168229 '要求:函数中用到的中间变量必须声明为Single类型。 '------------------------------------------------- Private Function Fun(m As Integer) As Single '********** Program ********* Dim y As Double Dim i As Integer For i = 0 To m y = y + 1 / (i + 5) Next i Fun = y '********** End ************* End Function Private Sub Form_Load() Show Print Fun(9) WWJT End Sub 计】 58题目:本程序将一个大于100的偶数n分解为两个素数之和, ' 其中nflag逻辑函数用于'判断自然数x是否为素数. '------------------------------------------------ Option Explicit Private Sub Form_Click() Dim n As Integer, x As Integer, y As Integer n = Val(InputBox(\请输入一个大于100的偶数\输入数据\ For x = 3 To n \\ 2 Step 2 '**********FOUND********** If x = 0 Then 改成 If nflag(x) Then 或 If nflag(x) = True Then y = n - x '**********FOUND********** If nflag(x) Then 改成 If nflag(y) Then 或 If nflag(y) =True Then Form1.Print n; \ Exit For End If End If Next x End Sub Function nflag(x As Integer) As Boolean Dim flag As Boolean Dim k As Integer Dim m As Integer k = 2: m = Int(Sqr(x)) flag = True Do While k <= m '**********FOUND********** If x Mod k = 0 Then flag = True 改成If x Mod k = 0 Then flag = false k = k + 1 Loop nflag = flag End Function------------------------------------ 59'题目:(事件)单击窗体。 ' (响应)编写代码功能如(图1)。 ' 将结果存入变量Sum中。使用while...wend语句完成程序 '------------------------------------------------- Private Sub Form_Click() Dim sum As Double '***************** Program ************** Dim i As Integer sum = 0 For i = 1 To 10 sum = sum + i ^ i Next i Print (CStr(sum)) '*************** End ************************* Call YZJ(sum) End Sub------------------------------------------------ 60'题目:编写函数fun其功能是:根据整型形参m, '计算如下公式的值: ' y=1+1/3+1/5+1/7+...+1/(2m+1) ' 例如:若m=9,则应输出:2.133256 '------------------------------------------------- Private Function fun(m As Integer) As Single Dim y As Double '********** Program ********* Dim y As Double Dim i As Integer y = 1 For i = 1 To m y = y + 1 / (2 * i + 1) Next i fun = y '********** End ************* End Function Private Sub Form_Load() Show Print fun(9) WWJT End Sub----------------------------------------------- 61'题目:编写函数fun,函数的功能是:根据一个百分制 '成绩mark(整数),显示对应五级制的评定。条件如下: 'mark大于等于90显示\优秀\ 'mark小于90且大于等于80显示\良好\'mark小于80且大于等于70显示\中等\'mark小于70且大于等于60显示\及格\'mark小于60显示\不及格\'要求使用IF语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(mark As Integer) As String '**********Program********** If mark>=90 then Fun=优秀 Elself mark >=80 then Fun=良好 Elseif mark>=70 then Fun=中等 Elseif mark>=60 then Fun=及格 Else Fun=不及格 '********** End ********** End Function Private Sub Form_Load() Show Print fun(90) NJIT_VB End Sub----------------------------------- 61'题目:(事件)单击窗体。 ' (响应)在窗体上打印数列2/1,3/2,5/3,8/5,13/8? ' 的前10项,并求其和,将和保存在变量s中 '------------------------------------------------- Private Sub Form_Click() Dim s As Single '******** Program *********** Dim i, j, k, m As Integer s = 0 :i = 2:j = 1 For k = 1 To 10 s = s + i / j m = j Print (CStr(i)) & \ j = i i = i + m Next k '********* End **************** YZJ (s) End Sub Private Sub YZJ(i As Single) Dim OUT As Integer OUT = FreeFile Open App.Path & \ Print #OUT, i Close #OUT End Sub''------------------------------------------------ 62 '题目:(事件)双击窗体。 ' (响应)求1+5+10+15+??+500的和,并将结果输出到窗体上。 ' 将结果存入变量SUM中 '------------------------------------------------- Private Sub Form_dblClick() Dim sum As Long sum = 1 '******* Program ********** Dim i% For i = 5 to 500 step 5 Sum = sum + i Next i Print sum '******* End ************ YZJ (sum) End Sub Private Sub YZJ(i As Integer) Dim OUT As Integer OUT = FreeFile Open App.Path & \ Print #OUT, i Close #OUT End Sub------------------------------------------- 63题目:编写函数fun,函数的功能是:求一个 ' 四位数的各位数字的立方和 '------------------------------------------------- Private Function fun(n As Integer) As Long '********** Program ********* Dim d As Integer, k As Integer, s As Integer While n > 0 d = n Mod 10 s = s + d * d * d n = n / 10 Wend fun = s '********** End ************* End Function Private Sub Form_Load() Show Print fun(1112) WWJT End Sub Private Sub WWJT() Dim i As Integer Dim s As String Dim l As Integer Dim d As Double Dim a(10) As String Dim fIn As Integer Dim fOut As Integer fIn = FreeFile Open App.Path & \ fOut = FreeFile Open App.Path & \ For i = 1 To 10 Line Input #fIn, a(i) l = Val(a(i)) Print #fOut, fun(l) Next Close #fIn Close #fOut End Sub 64题目:(事件)单击窗体。 ' (响应)求10!的值,并将结果输出到窗体上。 ' 将结果存入变量SUM中 '------------------------------------------------- Private Sub Form_Click() Dim sum As Long '********* Program ********* Dim i As Integer sum = 1 For i = 1 To 10 sum = sum * i Next i Print sum '************ End ************ YZJ (sum) End Sub Private Sub YZJ(i As Long) Dim OUT As Integer OUT = FreeFile Open App.Path & \ Print #OUT, i Close #OUT End Sub 65' '题目:编写函数fun,函数的功能是:判断一个字符是 '字母字符、数字字符还是其他字符,并做相应的显示。 '字母字符显示字符串\字母\'数字字符显示字符串\数字\'其他字符显示字符串\其他\ '要求使用Select Case语句来实现。 '------------------------------------------------- '注意: 请在指定的事件内编写代码 ' 代码只能写在两行标识之间 ' 不得修改已有代码 '保存时不得修改窗体和工程文件的名称及路径,否则后果自负。 '------------------------------------------------- Private Function fun(n As String) As String '**********Program********** If UCase(n) >= \fun = \字母\ ElseIf n >= \fun = \数字\Else fun = \其他\ End If '********** End ********** End Function Private Sub Form_Load() Show Print fun(\ Print fun(\ Print fun(\ NJIT_VB End Sub Private Sub NJIT_VB() Dim i As Integer Dim l As Integer Dim a(10) As String * 1 Dim fIn As Integer Dim fOut As Integer fIn = FreeFile Open App.Path & \ fOut = FreeFile Open App.Path & \ For i = 1 To 10 Line Input #fIn, a(i) Print #fOut, fun(a(i)) Next Close #fIn Close #fOut End Sub 66,题目:编写函数fun,函数的功能是:求1到m ' 之间的偶数之积。 '------------------------------------------------- Private Function fun(m As Integer) As Double '********** Program ********* Dim y As Double y = 1 Dim i As Integer For i = 1 To m If i Mod 2 = 0 Then y = y * i End If Next i fun = y '********** End ************* End Function Private Sub Form_Load() Show Print fun(100) WWJT End Sub Private Sub WWJT() Dim i As Integer Dim s As String Dim l As Integer Dim d As Double Dim a(10) As String Dim fIn As Integer Dim fOut As Integer fIn = FreeFile Open App.Path & \ fOut = FreeFile Open App.Path & \ For i = 1 To 10 Line Input #fIn, a(i) l = Val(a(i)) Print #fOut, fun(l) Next Close #fIn Close #fOut End Sub
正在阅读:
程序设计 - 图文01-25
美国文学史及选读试卷(4)06-29
文明施工、文物保护保证体系及保证措施项目风险预测与防范,事故04-27
司法考试侵权法记忆口诀06-10
我渴望长大400字作文02-06
好百年品牌战略05-14
电子信息专业认知报告05-22
2022-2022年中国UV涂料市场发展趋势研究报告(目录)04-12
电信传输技术第二章08-15
以校为本,推进综合实践活动课程建设06-09
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 程序设计
- 图文
- 最新人教版高中化学必修一经典期末测试题及答案
- 国家安全监管总局办公厅转发中央编办关于进一步明确矿井关闭监管职责分工的通知
- 南京市城市供水企业2008年(丰,枯季)水质检测督察情况通报(自建设施供水企业第二部分) - 图文
- 高中化学必修二知识点总结全一册
- 纽马克翻译理论简介
- 2011浙江省教师招聘考试体育基础知识权威归纳(中学部分)1
- 基于12864液晶显示单片机音乐播放器的大学本科毕业论文
- 论文
- 2010年面向对象课程设计实习指导书v1.1
- xx县现代农业示范园建设规划
- 《菩萨戒讲义》本课黑体
- 应届毕业生不适合做公务员,是就业歧视
- 离退休人员返聘注意事项
- 护士在护患纠纷中的心理应激与对策-毕业论文
- 《秒杀三角函数》文科大题
- 应用写作病文修改的笔记
- 家庭鱼缸养鱼知识大全
- 销售工作分析表格(表一)—(表五)
- 数控铣理论试题题库-有答案和图形
- 小学低年级语文阅读课教学流程