vb程序
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
教程参考
答案
八年级地理上册填图题岩土工程勘察试题省略号的作用及举例应急救援安全知识车间5s试题及答案
第一章
1、B
2、A
3、B
4、答,性,红色、充红红~事件,松手、红刺~
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
,红属气
走、爆破。
5、答,事件是指红象能红红红作出反映的外部刺激。事件红并
红又消息红红~事件红红程序红红是指每事件红红有相红的程称个
序代红~红在红事件红生红~红段代红才被红行。事件红生的红序会
决并定了代红红行的红序~因此每次红行红用程序红~程序代红
不是按照程序红的红序红行的。写来
6、答,VB是一包括界面红红、程序红红、红红、红红红建可红行个并
程序的集成红红红境。VB的集成红红红境的主界面中包含,红红红
菜红红、工具红、控件箱、工程红源管理器、性口、“布属窗窗体
局”口、红红器、代红红红器等元素红成。窗窗体
7、答, VB菜红通常情下有,文件、红红、红红、工程、格条况
式、红红、行、红红、红表、工具、外接程序、口、助等运窗帮13红菜红
红红成。
8、答,工具红可自行定红。红准工具红中通常情下有,添况
加红准exe工程、添加、菜红红红器、打红工程、保存工程、剪窗体
切、红制、粘红、红、撤消、重红、红、中、红束、工程红源管理找启断
器、性口、布局口、红象红红器、工具箱、据红红属窗窗体窗数窗
口、可红化元件管理器等按红红成。
9、答,红建VB红用程序的一般步红红,红建界面~红置窗体
和控件性~红代红~保存工程~行红红程序~红红属写运并并
排除红红~红建可红行文件。
10、
Private Sub Command1_Click()
Label1.Caption = "I love vb,I hate vb"
End Sub
第二章
1、2、
开始开始
否开入x、yb>a?
是temp=x
交开a、bx=y
否c>a?y=temp
是
交开a、c开出新的x、y
c>b?开束否
是
交开b、c
开出a、b、c
开束
3、S1 输 入待判断自然数:N,N>=2,,
S2 i=2,
S3 判断i是否小于N-1输,若不是S5
S4 判断N除以i输的余数是否0,输如果不是i=i+1输S3,
S5 判断i是否等于N输“”输输“输,若是出是素数,否出不是素数。”
4、S1 输 入待判断自然数:N,
S2 将N输输成字符S输输,算S输输的度K,
S3 i=1,
S4 判断i是否小于K-1输,若不是S6,
S5 判断S中的第i位和第K-i+1位是否相等,输如果是
i=i+1输S4输输,如果不是S6,
S6 判断i输输“”输输是否是中位数,若是出是回文数,否出不是回文数。“”
5、S1 输 入待判断自然数:a,
S2 i=1,
S3 判断i是否小于a-1输,若不是S5
S4 判断a除以i输的余数是否0,输输输输输如果是保留因子i输,否
i=i+1输S3,
S5 输出所有因子。
6、
开始
否开开>0?
是
否是否能开出信息开开开成三角形
是
开算
开出
开束
第三章
1、的性主要分红红红、外红、行红、字、位置等五红。窗体属体Caption
是红红~出红在红红红的文本容~而窗体窗体内Name是名窗体
称窗体~在程序代红中被作红的红红名。
2、ABDE
4、改红口的工作红红引红窗状会Activate事件~改红口大小引红窗会
resize事件。
5、forecolor和backcolor性首先红红系红中的红红~然后在红色板属
中红置相红的红色~font性红置好以后~在上放置的任属窗体
何控件都红承的会窗体font性。属
6、C
7、Label、optionbutton、checkbox、commandbutton有caption属
性~有没text性~属text、combobox有text性~有属没
caption性属
8、红象的性可以在红红界面红在性口中和行中在代红中红属属窗运
置~性口中的性列表有包括红象的所有性。属窗属并没属
9、picturebox、frame等
10、optionbutton和checkbox。Optionbox的Value可以取true
,红中和false,未红中~checkbox的Value可以取0,未红中~
1,红中~2,红灰~表示红红不能红红。
11、text、commandbutton可以红得焦点。在红红界面红第一放在个
窗体框将上的文本或命令按红得到焦点。
12、C
13、把Value的红红红2~表示红红不能红红红红~点红红红后就可以红框框
红了~而把enabled性红红属false红是红红红灰~完全不能红红。框
若把一控件的个Visible性红红属false红在程序行红看不到红运
控件。
14、用additem添加列表红~用来removeitem红除已有的列表红~
用clear红除所有列表红。
15、
16、
Private Sub Check1_Click()
If Check1.Value = 1 Then
Label2.Font.Italic = True
ElseIf Check1.Value = 0 Then
Label2.Font.Italic = False
End If
End Sub
Private Sub Check2_Click()
If Check2.Value = 1 Then
Label2.Font.Bold = True
ElseIf Check2.Value = 0 Then
Label2.Font.Bold = False
End If
End Sub
Private Sub Command1_Click()
End
End Sub
Private Sub Option1_Click()
If Option1.Value Then Label2.Font.Size = 12
Label2.Refresh
End Sub
Private Sub Option2_Click()
If Option2.Value Then Label2.Font.Size = 14
Label2.Refresh
End Sub
Private Sub Option3_Click()
If Option3.Value Then Label2.Font.Size = 16
Label2.Refresh
End Sub
Private Sub Option4_Click()
If Option4.Value Then Label2.Font.Name = "宋体"
Label2.Refresh
End Sub
Private Sub Option5_Click()
If Option5.Value Then Label2.Font.Name = "红隶"
Label2.Refresh
End Sub
Private Sub Option6_Click()
If Option6.Value Then Label2.Font.Name = "黑体"
Label2.Refresh
End Sub
17、
18、
第四章
1.B
2.红材教P40-41
3.不红~通用红程也可以存在于模红中窗体
4.红材教P43
5.字符串型常量的界定符是引双号"~日期型据的界定符数
是磅号#。A、B是字符型~C、D是日期型~E、F不于任属
何红型。
6.合法红量名有,A、C、D ;VB中合法红量名只能由字母、数
字和下红成~红且只能以字母红红,划构并
7.红材教P46
8. (1) a/(b+c/d) (2) (sqr(x^2+1)+x)^(1/3)
(3) (2*y)/((a*x+b*y)*(a*x-b*y))(4) 1+1/(1+1/m)
(5) (d/3)^(2*x)/2 (6) log(y+cos(x)^2)
(7) fabs((exp(x)+sin(x)^3)/(x+y))
(8)log((exp(x*y)+fabs(tan(z)^-1+cos(x)^3))/(x+y-z))
9.(1)(2) (A+B)/(A-B)
(3)(4) A*B*C/((D+1)*Y)
(5)(6) (X*Y)^5
10.A x+y<10 and x-y>0
B x*y>0 and x=fix(x) and y=fix(y)
C A=0 XOR B=0
D C1+C2+C3>=255 and C1>90 and C2>90 and
C3>80
11.T F F F F
12.BCDE ;A红生会溢出的红红,
13.(1) "3548" (2) 3548 (3) "3548" (4) 3548
(5) "83" (6) 83 (7) "3548" (8)
3548
14.以2红底的X的红,数log(x)/log(2)
15.C
16.z=Inputbox("红入一,个数"~"程序示例"~1.5)
17.Msgbox "Z的红1.5大于0"~48~"程序示例"
18.
Option Explicit
Const PI As Single = 3.14159
Private Sub Command1_Click()
Dim a As Single, b As Single, c As Single, area
As Single
a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text) * PI / 180 '角度角红红红弧度角
area = a * b * Sin(c) / 2
Text4 = CStr(Format(area, "0.00")) '使红小能出红数整数位的0
End Sub
Private Sub
Command2_Click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""End Sub
Private Sub
Command3_Click()
End
End Sub
第五章
1.
Option Explicit
Private Sub
Command1_Click()
Dim a As Integer, b As Integer
a = 1: b = 0
Do While a <= 5
b = b + a * a
a = a + 1
Loop
Print a, b
End Sub
Private Sub Command2_Click()
Dim ch As String, i As Integer
ch = "DEF"
For i = 1 To Len(ch) '循红的上界不红会
ch = Mid(ch, 2 * i - 1, 1) & Left(ch, Len(ch))
Print ch
Next i
End Sub
Private Sub Command3_Click()
Dim p As Integer, i As Integer
p = 1
For i = 1 To 5
p = p + (2 * i - 1) / (2 * i + 1)
If p >= 20 Then Exit For '跳出循红前红行不到红一句
Next i
Print i, p
End Sub
Private Sub Command4_Click()
Dim p As Integer, i As Integer, n As Integer
p = 2: n = 20
For i = 1 To n Step p '红数循红的初红、红红和步红都不红会
p = p + 2
n = n - 3
i = i + 1
If p >= 10 Then Exit For
Next i
Print i, p, n
End Sub
2.
Option Explicit
Dim n1 As Integer, n2 As Integer, n3 As Integer
Private Sub Command1_Click()
Dim i As Integer, j As Integer, k As Integer
For i = 1 To 10
For j = 1 To 10
k = Int(Rnd * 90 + 10)
Print k;
If k <= 40 Then
n1 = n1 + 1
ElseIf k <= 70 Then
n2 = n2 + 1
Else
n3 = n3 + 1
End If
Next j
Print
Next i
End Sub
Private Sub Command2_Click()
Print "小于等于40的据红,数个数" & n1 & "个"
Print "大于40小于等于70的据红,数个数" & n2 & "个"
Print "大于70的据红,数个数" & n3 & "个"End Sub
Private Sub Command3_Click()
Cls
End Sub
3.
Option Explicit
Private Sub Command1_Click()
Dim x As Integer, y As Integer
x = Text1.Text
If x <= 0 Then
y = 2 - x
ElseIf x <= 2 Then
y = x + 2
ElseIf x <= 5 Then
y = x ^ 2
Else
y = 25 - x
End If
Text2.Text = y
End Sub
Private Sub Command2_Click()
Text1.Text = ""
Text2 = ""
End Sub
4.
Option Explicit
Private Sub Command1_Click()
Dim i As Integer, j As Integer, k As Integer
For i = 1 To 2
For j = 1 To 10
k = Int(Rnd * 900 + 100)
Picture1.Print k;
If k Mod 2 <> 0 Then
List1.AddItem k
Else
List2.AddItem k
End If
Next j
Picture1.Print
Next i
End Sub
5.
Option Explicit
Private Sub Command1_Click()
Dim m As Integer, n As Integer, r As Integer
m = Val(Text1.Text)
n =
Val(Text2.Text)
Do
r = m Mod n
If r <> 0
Then
m = n
n = r
Else
Exit Do
End If
Loop
Text3.Text = Val(Text1.Text) *
Val(Text2.Text) / n
End Sub
6.
Option Explicit
Dim r1 As Integer, r2 As Single 'r2可能是大个很的~数最好定红成红精度型
Private Sub Command1_Click()
Dim i As Integer, k As Integer
r1 = 0: r2 = 1 'r2一定要初始化红1~否红红红0
For i = 1 To 10
k = InputBox("红红入第" & i & "个数")
Picture1.Print k;
r1 = r1 + k
r2 = r2 * k
Next i
End Sub
Private Sub Command2_Click()
Text1 = r1
End Sub
Private Sub Command3_Click()
Text2 = r2
End Sub
7.
Option Explicit
Private Sub Command1_Click()
Dim s As String, s1 As String, s2 As String, i
As Integer
s1 = Text1.Text
For i = 1 To Len(s1)
s = Mid(s1, i, 1)
If s >= "0" And s <= "9" Then
s2 = s2 & s
End If
Next i
Text2.Text = s2End Sub
8.
Option Explicit
Private Sub
Command1_Click()
Text1 = ""
Text2 = ""
End Sub
Private Sub Command2_Click()
Dim n As Integer, r As String, s As String
n = Val(Text1.Text)
Do
r = n Mod 2
s = r & s
n = n \ 2
Loop Until n = 0 '商当红0红红跳出循红
Text2.Text = s
End Sub
9.
Option Explicit
Private Sub Command1_Click()
Dim a As Long, b As Long, c As Long
For a = 1 To 100
For b = 1 To 100
For c = 1 To 100
If a * a + b * b = c * c Then
List1.AddItem a & "," & b & "," & c
End If
Next c
Next b
Next a
End Sub
10.
Option Explicit
Private Sub Command1_Click()
Dim i As Integer, r1 As Integer, r2 As Integer,
r3 As Integer
For i = 100 To 999
r1 = i \ 100
r2 = (i \ 10) Mod 10 '或者r2 = (i mod 100)\10
r3 = (i Mod 100) Mod 10
If r1 < r2 And r2 < r3 Then
List1.AddItem i
End If
Next i
End Sub
11.
Option Explicit
Private Sub Command1_Click()
Dim a As Single, b As Single, c As Single
a = 0: b = 1
c = (a + b) / 2
Do
If f(a) * f(c) > 0 Then
a = c
Else
b = c
End If
c = (a + b) / 2
Loop Until Abs(b - c) <= 0.00001
Text1.Text = Format(c, "0.########")End Sub
Private Function f(x As Single) As Single
f = x ^ 3 - x ^ 4 + 4 * x ^ 2 - 1End Function
第六章
6-1 红同学运上机行代红。
6-2
Option Explicit
Option Base 1
Private Sub Command1_Click()
Dim i As Integer, t As Integer
Dim a(15) As Integer
Randomize
For i = 1 To 15
a(i) = Int(100 * Rnd)
Text1 = Text1 & Str(a(i))
Next i
For i = 1 To 7
t = a(i)
a(i) = a(16 - i)
a(16 - i) = t
Next i
For i = 1 To 15
Text2 = Text2 & Str(a(i))
Next i
End Sub
Private Sub Command2_Click()
Text1 = ""
Text2 = ""
End Sub
Private Sub Command3_Click()
End
End Sub
6-3
Option Explicit
Dim a(20) As Integer
Private Sub Command1_Click()
Dim i As Integer
Randomize
For i = 1 To 20
a(i) = Int(90 * Rnd) + 10
Text1 = Text1 & Str(a(i))
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer, j As Integer, f As Boolean
Dim n As Integer
For i = 1 To 20
f = True
For j = i + 1 To 20
If a(i) = a(j) Then f = False
Next j
If f = True Then n = n + 1
Next i
Text2 = n
End Sub
Private Sub Command3_Click()
Text1 = ""
End Sub
Private Sub Command4_Click()
End
End Sub
6-4
Option Explicit
Dim a(20) As Integer
Private Sub Command1_Click()
Dim i As Integer
Randomize
For i = 1 To 20
a(i) = Int(90 * Rnd) + 10
Text1 = Text1 & Str(a(i))
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer, j As Integer, max As Integer
Dim n As Integer, w As Integer, p As Integer
For i = 1 To 20
n = 0: p = i
For j = 1 To 4
If i > 20 Then p = p - 20
n = n + a(p)
Next j
If n > max Then
max = n
w = i
End If
Next i
Text2 = max
Picture1.Print w & "--" & w + 4End Sub
Private Sub Command3_Click()
Text1 = ""
End Sub
Private Sub Command4_Click()
End
End Sub
6-5
Dim a(5, 5) As Integer
Private Sub Command1_Click()
For i = 1 To 4
For j = 1 To 5
a(i, j) = Int(9 * Rnd) + 1
Picture1.Print a(i, j);
Next j
Picture1.Print
Next i
End Sub
Private Sub Command2_Click()
For j = 1 To 5
s = 0
For i = 1 To 4
s = s + a(i, j)
Next i
Text1 = Text1 & Str(s)
Next j
End Sub
Private Sub Command3_Click()
For i = 1 To 4
s = 0
For j = 1 To 5
s = s + a(i, j)
Next j
Text2 = Text2 & Str(s) & Chr(13) & Chr(10)
Next i
End Sub
Private Sub Command4_Click()
Text1 = ""
Text2 = ""
Picture1.Cls
End Sub
Private Sub Command5_Click()
End
End Sub
6-6
Option Explicit
Private Sub Command1_Click()
Dim a(5, 5), i As Integer, j As Integer
Dim n As Integer, m As Integer, t As Integer
Randomize
For i = 1 To 5
For j = 1 To 5 - 1
a(i, j) = Int(40 * Rnd) * 2 + 10
Next j
Next i
For i = 1 To 5
For j = 5 To 6 - i Step -1
a(i, j) = Int(40 * Rnd) * 2 + 11
Next j
Next i
For i = 1 To 5
For j = 1 To 5
Text1 = Text1 & Str(a(i, j))
Next j
Text1 = Text1 & vbCrLf
Next i
End Sub
6-7 同6-4
6-8
Dim a(5, 5) As Integer
Private Sub Command1_Click()
Randomize
For i = 1 To 5
For j = 1 To 5
a(i, j) = Int(100 * Rnd) + 1
Picture1.Print Right(" " & a(i, j), 4);
Next j
Picture1.Print
Next i
End Sub
Private Sub Command2_Click()
For i = 1 To 5
For j = 1 To 5
s = s + a(i, j)
Next j
Next i
Text1 = Str(s)
End Sub
Private Sub Command3_Click()
For i = 1 To 5
For j = 1 To 5
If i = 1 Or j = 1 Or i = 5 Or j = 5 Then
s = s + a(i, j)
End If
Next j
Next i
Text2 = Str(s)
End Sub
Private Sub Command4_Click()
For i = 1 To 5
For j = 1 To 5
If i = j Or j = 6 - i Then
s = s + a(i, j)
End If
Next j
Next i
Text3 = Str(s)
End Sub
6-9
Option Explicit
Private Sub Command1_Click()
Dim a() As Integer, i As Integer, j As Integer
Dim max As Integer, k As Integer, f As Boolean
Dim n As Integer, m As Integer, t As Integer
n = InputBox("红入矩红的行数,")
m = InputBox("红入矩红的列数,")
ReDim a(n, m)
Randomize
For i = 1 To n
For j = 1 To m
a(i, j) = Int(90 * Rnd) + 10
Text1 = Text1 & Str(a(i, j))
Next j
Text1 = Text1 & vbCrLf
Next i
For i = 1 To n
max = 0
For j = 1 To m
If a(i, j) > max Then
max = a(i, j)
t = j
End If
Next j
For k = 1 To n
If a(k, t) < max Then Exit For
Next k
If k > n Then
Picture1.Print "鞍点,"; a(i, t); "第"; i; "行"; t; "列"
f = True
End If
Next i
If f = False Then Picture1.Print "没有鞍点"
End Sub
Private Sub Command2_Click()
Text1 = ""
Picture1.Cls
End Sub
Private Sub Command3_Click()
End
End Sub
6-10
Option Explicit
Private Sub Form_Click()
Dim a() As Integer, n As Integer
Dim i As Integer, j As Integer
n = InputBox("红数")
ReDim a(n, n)
For i = 1 To n
Print Tab(20 - 2 * i);
For j = 1 To i
If i = 1 Or i = j Then
a(i, j) = 1
Else
a(i, j) = a(i - 1, j - 1) + a(i - 1, j)
End If
Print Left(a(i, j) & " ", 4);
Next j
Print
Next i
End Sub
6-11
Option Explicit
Private Sub Command1_Click()
Dim a(4, 5), i As Integer, j As Integer
Dim b(4) As Integer, max As Integer, min As Integer
Dim n As Integer, m As Integer, t As Integer
Randomize
max = 0: min = 32767
For i = 1 To 4
For j = 1 To 5
a(i, j) = Int(90 * Rnd) + 10
Text1 = Text1 & Str(a(i, j))
b(i) = b(i) + a(i, j)
Next j
Text1 = Text1 & vbCrLf
If max < b(i) Then
max = b(i): m = i
ElseIf min > b(i) Then
min = b(i): n = i
End If
Next i
Label1.Caption = "max行和, " & max & " min行和 ," & min & vbCrLf &
"max行, " & m & " min行, " & n & " 交红红行两"
For j = 1 To 5
t = a(m, j)
a(m, j) = a(n, j)
a(n, j) = t
Next j
For i = 1 To 4
For j = 1 To 5
Text2 = Text2 & Str(a(i, j))
Next j
Text2 = Text2 & vbCrLf
Next i
End Sub
6-12
Option Explicit
Private Sub Command1_Click()
Dim a(), i As Integer, j As Integer
Dim b(4) As Integer, max As Integer, min As Integer
Dim n As Integer, m As Integer, t As Integer
Randomize
n = InputBox("矩红红数n:")
ReDim a(n, n)
For i = 1 To n
For j = 1 To n
a(i, j) = Int(90 * Rnd) + 10
Text1 = Text1 & Str(a(i, j))
Next j
Text1 = Text1 & vbCrLf
Next i
For i = 1 To n
For j = 1 To n
Text2 = Text2 & Str(a(j, i))
Next j
Text2 = Text2 & vbCrLf
Next i
End Sub
Private Sub Command2_Click()
Text1 = ""
Text2 = ""
End Sub
Private Sub Command3_Click()
End
End Sub
6-13
Option Explicit
Option Base 1
Private Sub Command1_Click()
Dim a(3, 3) As Integer, i As Integer, j As Integer
Dim max As Long, k As Long, f As Integer
Dim n As Integer, m As Integer
Randomize
For i = 1 To 3
For j = 1 To 3
a(i, j) = Int(90 * Rnd) + 10
Text1 = Text1 & Str(a(i, j))
Next j
Text1 = Text1 & vbCrLf
Next i
For i = 1 To 3 '主红角红方向
m = i
k = 1
For j = 1 To 3
k = k * a(m, j)
m = m + 1
If m > 3 Then m = 1
Next j
If k > max Then
max = k
n = i
f = 1
End If
Next i
For i = 1 To 3 '红红角红方向
m = i
k = 1
For j = 1 To 3
k = k * a(j, m)
m = m - 1
If m < 1 Then m = 3
Next j
If k > max Then
max = k
n = i
f = 2
End If
Next i
Picture1.Print "最大红元素,"
If f = 1 Then
For i = 1 To 2
Picture1.Print "a("; n; ","; i; ")="; a(n, i); " ";
n = n + 1
If n > 3 Then n = 1
Next i
Picture1.Print "a("; n; ","; i; ")="; a(n, i)
ElseIf f = 2 Then
For i = 1 To 2
Picture1.Print "a("; i; ","; n; ")="; a(i, n); " ";
n = n - 1
If n < 1 Then n = 3
Next i
Picture1.Print "a("; i; ","; n; ")="; a(i, n)
End If
Picture1.Print "乘红="; max
End Sub
Private Sub Command2_Click()
Text1 = ""
Picture1.Cls
End Sub
Private Sub Command3_Click()
End
End Sub
6-14
Option Explicit
Private Sub Command1_Click()
Dim a(3, 3) As Integer, i As Integer, j As Integer
Dim k As Integer
i = 3: j = 2: a(i, j) = 1: k = 1
Do Until k > 9
k = k + 1
If i + 1 > 3 And j + 1 <= 3 Then
i = 1: j = j + 1
ElseIf i + 1 <= 3 And j + 1 > 3 Then
i = i + 1: j = 1
ElseIf i + 1 > 3 And j + 1 > 3 Then
i = i - 1
ElseIf i + 1 <= 3 And j + 1 <= 3 And a(i + 1, j + 1) <> 0 Then
i = i - 1
Else
i = i + 1: j = j + 1
End If
a(i, j) = k
Loop
For i = 1 To 3
For j = 1 To 3
Picture1.Print a(i, j);
Next j
Picture1.Print
Next i
End Sub
Private Sub Command2_Click()
Dim a() As Integer, i As Integer, j As Integer
Dim k As Integer
Dim n As Integer
n = InputBox("幻方红,数")
ReDim a(n, n)
i = n: j = (n + 1) / 2: a(i, j) = 1: k = 1
Do Until k > n * n
k = k + 1
If i + 1 > n And j + 1 <= n Then
i = 1: j = j + 1
ElseIf i + 1 <= n And j + 1 > n Then
i = i + 1: j = 1
ElseIf i + 1 > n And j + 1 > n Then
i = i - 1
ElseIf i + 1 <= n And j + 1 <= n And a(i + 1, j + 1) <> 0 Then
i = i - 1
Else
i = i + 1: j = j + 1
End If
a(i, j) = k
Loop
For i = 1 To n
For j = 1 To n
Picture1.Print Right(" " & a(i, j), 4);
Next j
Picture1.Print
Next i
End Sub
6-15
Option Explicit
Option Base 1
Private Sub Command1_Click()
Dim a() As Integer, i As Integer, j As Integer
Dim max As Long, k As Long, f As Integer
Dim n As Integer, m As Integer
Randomize
f = InputBox("红入方红红数,")
ReDim a(f, f)
For i = 1 To f
For j = 1 To f
a(i, j) = Int(90 * Rnd) + 10
Text1 = Text1 & Str(a(i, j))
Next j
Text1 = Text1 & vbCrLf
Next i
For i = 1 To f '副红角红方向
m = i
k = 0
For j = 1 To f
k = k + a(j, m)
m = m - 1
If m < 1 Then m = f
Next j
If k > max Then
max = k
n = i
End If
Next i
Picture1.Print "max,"; max
For i = 1 To f
Picture1.Print "a("; i; ","; n; ")="; a(i, n)
n = n - 1
If n < 1 Then n = f
Next i
End Sub
Private Sub Command2_Click()
Text1 = ""
Picture1.Cls
End Sub
Private Sub Command3_Click()
End
End Sub
第七章
1,在红程中声声静明的局部红量其生命期只到本次红程红行红束就红止了~但是在红程中明的红红量其生命期是只有包含此红程的被红当窗体止的红候才红止。
2,有三红形式~红红、红址和利用全局红量向红程红红据。数
红红,红红程红红的是红量的红~不有会副作用。
红址,红红程红红的是红量的地址~有副作用
利用全局红量,有副作用~
3,
Private Sub C1_Click()
Dim i As Integer, j As Integer
i = 8: j = 8
Call aa(i, j)
Print i
Print j
End Sub
Private Sub aa(ByVal m As Integer, ByRef n As Integer)
m = m + 1
n = n + 1
End Sub
4,(1) BASIC
(2) 第一行, 626~第二行, 262~第三行, -298
(3) 第一行, 23 ~ 第二行, 47
(4) 第一行, 108~ 第二行,12-10~第三行,52~第四行,12-105,
Private Sub Command1_Click()
Dim ss As Single, hs As Single
ss = Text1
Text2 = tra(ss)
End Sub
Private Sub Command2_Click()
Text1.Text = ""
Text2 = ""
End Sub
Private Sub Command3_Click()
End
End Sub
Public Function tra(ByVal C As Single) As Single
Dim F As Single
F = (C * 9) / 5 + 32
tra = F
End Function
6.
Private Sub Command1_Click()
Dim data_one As Integer
data_one = InputBox("红红入要判断数的:", "素数断判")
If Prime(data_one) Then
sushu = Str(data_one) + " 是素数"
else
sushu = Str(data_one) + " 不是素数"
End If
End Sub
Private Sub Command2_Click()
Text1 = ""
End Sub
Private Sub Command3_Click()
End
End Sub
Public Function Prime(ByVal N As Integer) As Boolean
Dim k As Integer
For k = 2 To Sqr(N)
If N Mod k = 0 Then Exit Function
Next k
Prime = True
End Function
7.
Private Sub Command1_Click()
Dim ss As String
Dim i As Integer
For i = 1 To 100
If Prime(i) And Prime(i + 2) Then
ss = ss & Chr(13) & Chr(10) & i & Str(i + 2)
End If
Next i
Text1 = ss
End Sub
Public Function Prime(ByVal N As Integer) As Boolean
Dim k As Integer
For k = 2 To Sqr(N)
If N Mod k = 0 Then Exit Function
Next k
Prime = True
End Function
8.
Option Explicit
Option Base 1
Private Sub Form_Click()
Dim a As Integer, n As Integer
Dim i As Integer
Randomize
Dim aa(20) As Integer
a = Int(100 * Rnd() * 1)
n = 1
Do
For i = 1 To n - 1
If a = aa(i) Then
Exit For
End If
Next i
If i >= n Then
aa(n) = a
n = n + 1
End If
a = Int(100 * Rnd() * 1)
Loop While n <= 20
For i = 1 To 20
Print aa(i);
Next i
End Sub
9.
Dim a(19) As Integer
Private Sub Command1_Click()
a(0) = Int(100 * Rnd) + 1For i = 1 To 19
a(i) = Int(100 * Rnd) + 1
For j = 0 To i - 1
If a(i) = a(j) Then
i = i - 1
Exit For
End If
Next j
If j = i Then Print a(i);
Next i
End Sub
Private Sub Command2_Click()
Max = a(0) + a(1) + a(2) + a(3)
maxi = 0
For i = 0 To 19
s = a(i) + a((i + 1) Mod 20) + a((i + 2) Mod 20) + a((i + 3) Mod 20)
If s > Max Then
Max = s
maxi = i
End If
Next i
Print Str(a(maxi)) & "+" & Str(a(maxi + 1)) & "+" & Str(a(maxi + 2)) & "+" &
Str(a(maxi + 3)) & "=" & Str(Max)End Sub
10.
Private Sub Command1_Click()
Dim a(5, 5) As Integer
Randomize
For i = 1 To 5
For j = 1 To 5
a(i, j) = Int(100 * Rnd) + 1
Print a(i, j);
Next j
Print
Next i
Call fmax(a)
End Sub
Private Sub fmax(a() As Integer)
Max = a(1, 1)
maxi = 1
maxj = 1
For i = 1 To 5
For j = 1 To 5
If a(i, j) > Max Then
Max = a(i, j)
maxi = i
maxj = j
End If
Next j
Next i
Print "最大元素红,a(" + Str(maxi) + "," + Str(maxj) + ")=" + CStr(Max)
End Sub
11 .
Private Sub Command1_Click()
Dim i As Integer
For i = 1 To 6
Text1 = Text1 & Str(fab(i))
Next i
End Sub
Private Function fab(n As Integer) As
Long
If n = 1 Or n = 2 Then
fab = 1
Else
fab = fab(n - 1) + fab(n - 2)
End If
End Function
12 .
Private Sub Command1_Click()
Dim i As Integer
a = InputBox("红红入一大于个2的偶数:")
n = Val(a)
If n = 4 Then
Print "4 = 2 + 2"
Exit Sub
End If
For i = 3 To n - 1 Step 2
If prime(i) And prime(n - i) Then
Print Str(n) + "=" + Str(i) + "+" + Str(n - i)
Exit Sub
End If
Next i
Print "歌德巴赫猜想不红,"
End Sub
Private Function prime(ByVal n As Integer) As Boolean
For i = 2 To n - 1
If n Mod i = 0 Then
prime = False
Exit Function
End If
Next i
prime = True
End Function
13.
Private Sub Command1_Click()
Dim i As Integer
For i = 10 To 9999
Call arm(i)
Next i
End Sub
Private Sub arm(j As Integer)
a = CStr(j)
n = Len(a)
For k = 1 To n
b = Mid(a, k, 1)
s = s + Val(b) ^ n
Next k
If s = j Then
Print j
End If
End Sub
14.
Private Sub Command1_Click()
Dim n As Integer, m As String, b As Integer
n = InputBox("红红入原始数的红制(2-16),")
m = InputBox("红红入原始数,")
Label1.Caption = Str(n) + "红制数"
Text1 = m
b = trans(m, n)
Text2 = Str(b)
End Sub
Private Function trans(m As String, n As Integer) As Integer
Dim k As Integer, t As String, r As Integer, s As Integer
k = Len(m)
For i = 1 To k
t = UCase(Mid(m, i, 1))
If t >= "A" And t <= "F" Then
r = Asc(t) - 55
Else
r = Val(t)
End If
s = s + r * n ^ (k - i)
Next i
trans = s
End Function
15.
Form1:
Dim b(5) As Single
Private Sub Command1_Click()
Dim a As Single
Randomize
For i = 0 To 5
a = (Int(61 * Rnd) + 40) / 10
b(i) = a
Text1(i) = Str(a)
Next i
End Sub
Private Sub Command2_Click()
Min = b(0)
Max = b(0)
Sum = b(0)
For i = 1 To 5
If b(i) > Max Then Max = b(i)
If b(i) < Min Then Min = b(i)
Sum = Sum + b(i)
Next i
Sum = Sum - Max - Min
Text2 = Str(Sum / 4)
End Sub
Private Sub Command3_Click()
For i = 0 To 5
Text1(i) = ""
Next i
Text2 = ""
End Sub
Private Sub Command4_Click()
End
End Sub
Form2:
Dim b(5) As Single
Private Sub Command1_Click()
Dim a As Single
Randomize
For i = 0 To 5
a = (Int(61 * Rnd) + 40) / 10
b(i) = a
List1.AddItem Chr(65 + i) + ":" + Str(a)
Next i
End Sub
Private Sub Command3_Click()
List1.Clear
Text1 = ""
End Sub
Private Sub Command4_Click()
End
End Sub
Private Sub Command2_Click()
Min = b(0)
Max = b(0)
Sum = b(0)
For i = 1 To 5
If b(i) > Max Then Max = b(i)
If b(i) < Min Then Min = b(i)
Sum = Sum + b(i)
Next i
Sum = Sum - Max - Min
Text1 = Str(Sum / 4)
End Sub
16.
Private Sub Command1_Click()
Dim i As Integer, k As Integer, m As Integer
Dim s As Single, t As Single
i = 1
Do
t = 1
For k = 1 To i
m = 2 * k
t = t * m
Next k
s = s + 1 / t
If 1 / t < 0.00001 Then Exit Do
i = i + 1
Loop
Print s
End Sub
17.
Private Sub Command1_Click()
Dim n As Integer, t As Single, s As Single, x As Single
n = 2: s = 0
x = InputBox("input x:")
Do
t = (x ^ f(n)) / (f(n - 1) * f(n))
s = s + t
If t < 0.00001 Then Exit Do
n = n + 1
Loop
Print s
End Sub
Private Function f(n As Integer) As Integer
If n = 1 Or n = 2 Then
f = 1
Else
f = f(n - 1) + f(n - 2)
End If
End Function
18.
Private Sub Form_Click()
Dim a(10) As Integer
Randomize
For i = 1 To 10
a(i) = Int(Rnd * 20) + 1
Debug.Print a(i);
Next i
Debug.Print
Call insertion(a)
For i = 1 To 10
Debug.Print a(i);
Next i
Debug.Print
End Sub
Private Sub insertion(sort() As Integer)
Dim mid As Integer, left As Integer, right As Integer
ub = UBound(sort)
If sort(1) > sort(2) Then
temp = sort(1)
sort(1) = sort(2)
sort(2) = temp
End If
For i = 3 To ub
flg = False
flg1 = False
temp = sort(i)
If temp < sort(1) Then
flg = True
mid = 0
End If
left = 1
right = i - 1
Do While left <= right And Not flg
mid = Int((left + right) / 2)
If sort(mid) = temp Then
flg1 = False
Exit Do
ElseIf sort(mid) < temp Then
left = mid + 1
flg1 = False
Else
right = mid - 1
flg1 = True
End If
Loop
If flg1 Then mid = mid - 1
For j = i - 1 To mid + 1 Step -1
sort(j + 1) = sort(j)
Next j
sort(mid + 1) = temp
Next i
End Sub
19.
Option Explicit
Option Base 1
Dim aa(2, 25) As IntegerDim bb(25) As Integer
Private Sub C1_Click()
Dim v As Integer, y As Integer
Dim s As String
For v = 1 To 25
If XXX(v) = Val(T1) Then
For y = 1 To 25
s = s & Str(bb(y))
Next y
End If
Next v
T2 = s
End Sub
Public Function XXX(ByVal num As Integer) As Integer
Dim i As Integer, j As Integer, m As Integer, n As Integer
Dim ct As Integer, cnt As Integer
Dim flag As Boolean
'红红红数初红
For i = 1 To 25
aa(2, i) = 1
Next i
For j = 1 To 25
aa(1, j) = j
Next j
'依次取~红红取的序列~数数并数返回最后取到的红
m = 1
ct = 1
Do
If aa(2, num) = 1 Then
bb(m) = aa(1, num)
m = m + 1
If m > 25 Then Exit Do
aa(2, num) = 0
cnt = 0
End If
ct = ct + 1
Do While ct <> cnt
num = num + 1
If num > 25 Then num = num Mod 25
cnt = aa(2, num) + cnt
Loop
Loop
XXX = bb(25)
End Function
20.
Option Explicit
Dim ss As String
Private Sub C1_Click()
Call great_zs
T1 = ss
End Sub
'红生6个数不同的
Public Sub great_zs()
Dim shu_1 As Integer, shu_2 As Integer, shu_3 As Integer, shu_4 As Integer,
shu_5 As Integer, shu_6 As Integer
Dim shu As Single
For shu_1 = 1 To 9
For shu_2 = 1 To 9
For shu_3 = 1 To 9
For shu_4 = 1 To 9
For shu_5 = 1 To 9
For shu_6 = 1 To 9
shu = Val(CStr(shu_1) & CStr(shu_2) &
CStr(shu_3) & CStr(shu_4) & CStr(shu_5) & CStr(shu_6))
If lala(shu) And zhishu(shu) Then ss = ss +
Str(shu) '把红足要求的红红到红量 数ss 中
Next shu_6
Next shu_5
Next shu_4
Next shu_3
Next shu_2
Next shu_1
End Sub
'判断两个数数相红的是否红素
Public Function zhishu(ByVal zss As Single) As Boolean
Dim i As Integer, jud As Integer
For i = 1 To 5
jud = Val(Mid(CStr(zss), i, 1)) + Val(Mid(CStr(zss), i + 1, 1))
If Not Prime(jud) Then Exit Function
Next i
If Not Prime(Val(Mid(CStr(zss), 6, 1)) + Val(Mid(CStr(zss), 1, 1))) Then
Exit Function
zhishu = True
End Function
'判断数素
Public Function Prime(ByVal N As Integer) As Boolean
Dim k As Integer
For k = 2 To Sqr(N)
If N Mod k = 0 Then Exit Function
Next k
Prime = True
End Function
'判断数数列中的是否各不相同
Public Function lala(ByVal la As Single) As Boolean
Dim i As Integer, j As Integer
For i = 1 To 6
For j = 1 To 6
If Mid(CStr(la), i, 1) = Mid(CStr(la), j, 1) And i <> j Then Exit
Function
Next j
Next i
lala = True
End Function
21.
Private Sub Command1_Click()
Dim i As Integer, x As Double, y As Double, z
As Double, a As String
a = "574396281"
Dim s As String
For i = 1 To Len(a)
If i = 9 Then
x = Val(CStr(Mid(a, i, 2)) & CStr(Left(a, 1)))
Else
x = Val(Mid(a, i, 2))
End If
'//////////////////////////////////
If i + 2 <= 7 Then
y = Val(CStr(Mid(a, i + 2, 3)))
ElseIf i + 2 <= 9 Then
y = Val(Mid(a, i + 2, 3) & Left(a, 3 - (9 - (i + 2) + 1)))
ElseIf i + 2 > 9 Then
y = Val(Mid(a, (i + 2) - 9, 3))
End If
'/////////////////////////////////////////
If i + 5 <= 6 Then
z = Val(Mid(a, i + 5, 4))
ElseIf i + 5 <= 9 Then
z = Val(Mid(a, i + 5, 4) & Left(a, 5 - (9 - (i + 5) + 2)))
ElseIf i + 5 > 9 Then
z = Val(Mid(a, (i + 5) - 9, 4))
End If
'////////////////////////////////////////////////////////
If x * y = z Then s = s & Str(x) & "*" & Str(y) & "=" & Str(z) +
Chr(13) + Chr(10)
Next i
Text1 = s
End Sub
第八章
1、红红材参教P180
2、红红材参教P186
3、
Option Explicit
Option Base 1
Dim a(10) As IntegerPrivate Sub cmd红文件_Click()
Dim s As String, i As Integer
Open "D:\DATA.TXT" For Input As #1
For i = 1 To 10
Input #1, a(i)
s = s & a(i) & " "
Next i
Text1 = s
Close
End Sub
Private Sub Cmd排序_Click()
Dim i As Integer, j As Integer, Temp As Integer
Dim s As String
For i = 1 To 9
For j = i + 1 To 10
If a(i) > a(j) Then
Temp = a(i)
a(i) = a(j)
a(j) = Temp
End If
Next j
Next i
For i = 1 To 10
s = s & a(i) & " "
Next i
Text2 = s
End Sub
Private Sub Cmd写文件_Click()Dim i As Integer
Open "D:\DATA1.TXT" For Output As #2
For i = 1 To 10
Write #2, a(i);
Next i
Close
End Sub
Private Sub Cmd退出_Click()
End
End Sub
第九章
1、红红材参教P202
2、红红材参教P204
3、红红材参教P205
4、红红材参教P205-206
5、红红材参教P207-208
6、红红材参教P208-209
7、略
8、下红红划修改后代红
Option Explicit
Option Base 1
Private Sub Cmd1_Click()
Dim a(10) As Integer, I As Integer, J As Integer
Dim b(10) As Integer, K As Integer
For I = 1 To 10
a(I) = Int(Rnd * 100) + 1
Picture1.Print a(I);
Next I
Picture1.Print
J = 1: K = 10 '原 K = 5
For I = 1 To 10
If a(I) Mod 2 = 1 Then '原a(I) Mod 2 = 0
b(J) = a(I)
J = J + 1
Else
b(K) = a(I)
K = K - 1 '原 K = K + 1
End If
Next I
For I = 1 To 10
Picture2.Print b(I);
Next I
Picture2.Print
End Sub
9、;1,;2,正确~;3,红红,下红红划修改后代红
Private Function prime(n As Integer) As Boolean
Dim I As Integer
prime = False
For I = 2 To Sqr(n)
If n Mod I = 0 Then Exit For
Next I
If I > Sqr(n) Then prime = True
End Function
10、下红红划修改后代红
Option Explicit
Private Sub Command1_Click()
Dim n As Integer, st As Long, fi As Long
Dim i As Long 'Integer改红long
n = Text1
st = 10 ^ (n - 1): fi = 10 ^ n - 1
For i = st To fi
If increase(i) Then List1.AddItem i
Next i
End Sub
Private Function increase(ByVal n As Long) As Boolean '加ByVal
Dim k As Integer, a() As Integer, i As Integer
k = Len(CStr(n))
ReDim a(k)
For i = k To 1 Step -1 '加step-1
a(i) = n Mod 10
n = n \ 10
Next i
For i = 1 To k - 1
If a(i) >= a(i + 1) Then Exit Function '将Exit For 改红 Exit Function
Next i
increase = True
End Function