高中信息技术综合库——算法实例的程序实现1
一、高中信息技术综合库——算法实例的程序实现1
1.有如下VB程序段:
Dim a(1 to 5) as Integer, i as Integer, c as Integer
a(1) = 2 : a(2) = 1 : a(3) = 3 : a(4) = 4 : a(5) = 5
c = 0
For i = 3 to 5
If a(i - 2) + a(i - 1) = a(i) Then c = c + 1
Next i
Text1.Text = Str(c)
该程序运行后,文本框text1中显示的内容是( )
A.1 B.2 C.3 D.4
2.某仓库物品代码格式为“X-XXX-XXXXX-Y”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。校验码由前面9个X计算得到,计算方法为:从左边开始,第1个数字乘以1 加上第2个数字乘以2……依此类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。
小吴设计一个根据校验码校验物品代码的VB程序,功能如下:在文本框Text1中输入物品代码,单击“校验”按钮Command1,如果输入的校验码与计算所得的校验码一致,则输出“校验通过。”(如下左图所示),否则输出“校验不通过!”(如下右图所示)。
Dim s As String '用于存储输入的物品代码
Dim t As String
Dim i As Integer, j As Integer
Dim sum As Integer '用于存储计算校验码的累加和
Dim check_old As Integer '用于存储输入物品代码中的校验码Y
Dim check_new As Integer '用于存储按照前面9个数字X计算所得的新校验码
Dim a(1 To 10)As Integer
Private Sub Command1_Click()
'从物品代码中取出9个数字X依次存储到a(1)到a(9)中,取出校验码Y存储到a(10)中
s= Text ①
j=0
For i=1 To 13
t=Mid(s, i, 1)
If(t>="0")And(t<="9") Then
j=j+1
a(j)=Val(t)
End If
Next i
'计算新的校验码并和输入的校验码进行比较
sum=0
For i=1 To 9
sum=sum+ ②
Next i
check_new= ③
check_old=a(10)
If check_old=check_new Then
Label1.Caption="校验通过。"
Else
Label1.Caption="校验不通过! "
End If
End Sub
实现上述功能的VB程序如下,加框处代码有错,请改正。
3.对一个n×n的矩阵以“行”为单位进行升序排序,如下表所示是一个4×4的矩阵以行为单位进行升序排序。
小杜编写了实现上述功能的程序,程序功能如下:程序运行时,在文本框Text1中输入n(1<=n<=10),单击“产生”按钮Command1产生n×n个随机数,随机数的范围为[0,9],随机存储在数组a中,并以矩阵的形式在列表框List1上显示单击“排序”按钮Command2,对矩阵以“行”为单位进行升序排序,并在列表框List2输排序后的矩阵。在程序运行界面如下图所示,实现上述功能的VB程序如下,请在划线处填入合适的代码。
Dim n As Integer
Dim a(1 To 100) As Integer
‘随机生成数并存储在List1中,代码略
Private Sub Command1_Click() ‘按行排序
Dim i As Integer, j As Integer, t As Integer
Dim s As String
s=“”
For i=1 To
k=i
For j=i+1 To
If a(j)
Next j
If k<> i Then t = a(k): a(k)=a(i): a(i)=t
If I Mod n=0 Then List2.AddItem s: s=“”
Next i
End Sub
Private Sub Command2_Click() ‘按列排序
Dim i As Integer, j As Integer, t As Integer
Dim s As String
s= “”
For i=1 To i-1
k=i
For j= i+n To
If a(j)Next j
If k<> i Then t=a(k): a(k)=a(i): a(i)=t
If I Mod n=0 Then List2.AddItem s: s= “”
Next i
End Sub
4.小岩设计了一个顺时针旋转矩阵的程序,其功能为:运行程序时,在文本框Text1中输入矩阵规模n,点击“产生矩阵”按钮Command1,在列表框List1中显示一个n*n的矩阵,该矩阵数据由从1开始的连续自然数组成。点击“旋转矩阵”按钮Command2,该矩阵顺时针旋转90度并显示在列表框List2中,此后每点一次“旋转矩阵”按钮Command2,列表框List2中显示的矩阵顺时针旋转90度。请完成程序填空。
Dim n As Integer
Dim st As String
Dim a(1 To 100) As Integer
Dim b(1 To 100) As Integer
Private Sub Command1_Click()
'产生矩阵,代码略
End Sub
Private Sub Command2_Click() '旋转矩阵
For i=1 To n '行
st= “”
For j= 1 To n '列
b((i-1)*n+j)=
st=st+adj(Str(b((i-1)*n+j)),3)
Next j
List2.AddItem st
Next i
End Sub
Function adj(a As String, n As Integer) As String
'在字符串a前加入适当的空格,使a的长度为n位,代码略
End Function
5.在美国国家信息交换码中,ASCII值从32到127是可以打印并显示的字符,把这96个字符随机调整次序,生成密码本。根据输入的密钥和明文,单击“加密”按钮Command1,输出密文。基本算法如下:
1)用数组mab分别记录1~96个字符的ASCII值,用数组zm记录对应字符在密码本中位置,如mab(9)=65,表示密码本中第9个字符是“A”,则对应的zm(65)=9;
2)把密钥中每个字符的ASCII值的各个数字进行累加(如Hi分别为(7+2)+(1+0+5)),将累加的和除以9取余数后加7,作为将密码本转换成二维表的列数;
3)每个明文在转换后二维表中位置作为密文,该位置是用十六进制表示的行号和列号。
程序运行的界面如下图所示:
实现上述功能的VB程序如下,请回答以下问题:
(1)若输入密钥为“AB”,则根据算法及密码本,字母“A”加密后的密文是 。
(2)请在划线处填入合适的代码。
Dim Mab(96) As Integer '存储密码本中每个字符的ASCII值
Dim zm(127) As Integer '存储ASCII值32至127的字符在密码本数组mab中的下标
Private Sub Form_Load()
'产生密码本及96个字符在密码本中位置,代码略。
End Sub
Function p(s As String) As Integer
Dim i As
Integer, t1 As Long
Dim sum As
Integer, s1 As String
t1=0
i=1
Do While i<=Len(s)
s1=Mid(s,
i, 1)
t1=Asc(s1)
i=i+1
Loop
p=sum Mod 9+7
End Function
Private Sub Command1_Click()
Dim i As
Integer, t As Integer, hang As Integer
Dim s As
String, s1 As String, Lie As Integer
List1.Clear
s1=Text1.Text
t=p(s1)
Label5.Caption=
“将密码本换成一张”+Str(t)+ “列的二维表”
i=1
Do While i<=96
s=s+Chr(Mab(i))+
“”
If i Mod
t=0 Or i=96 Then
List1.AddItem
s
s= “”
End If
i=i+1
Loop
wz=
“123456789ABCDEF”
s=Text2.Text
For i =1 To
Len(s)
s1=Mid(s,
i, 1)
hang=(t1-1)\t+1
lie=(t1-1)
Mod t+1
s2=
Next i
Text3.Text=s2
End Sub
6.数组a中存放着1到20间的正整数,要求对其中的元素进行分段排序,在文本框Text2中输入每段元素的个数,在文本框Text3中显示每段降序排序后的数据,其中多余的元素不做处理。具体界面如下图所示:
实现该功能的VB程序如下,请在划线处填入合适的代码:
Dim a (0 To 100) As Integer
Const high=16
Private Sub Form_Load()
'产生high个随机数,并显示在文本框Text1,代码略
End Sub
Private Sub Command1_Click()
Dim p As Integer, q As Integer, t As Integer
Dim m As Integer, n As Integer, k As Integer
m=Val(Text2.Text)
For i=1 To
c=“”
For j=1 To m-1
q=i*m
k=sort(p, q)
If a(k)<>a(q) Then
t=a(p): a(p)=a(k): a(k)=t
End If
Next j
Text3.Text=Text3.Text+ “”+c
Next i
End Sub
Function sort(f As Integer, g As Integer) As Integer
s=f
For i=f+1 To g
If a(i)>a(s) Then
End If
Next i
sort=s
End Function
7.LZW编码是一种自适应词典编码,通过建立一个字典,实现字符的编码。假设输入的字符串中仅有小写字母和空格,编码方法如下:
⑴初始时,建立一个空字典,把26
个小写字母加入字典中。26 个小写英文字母编码为 1-26,字母“a”的编码为 1,字母“b”的编码为2,其它字母的编码依次增加。
⑵从字符串第一个位置开始扫描,若遇到空格(空格用“*”表示),则得到一个单词,截取该单词并存入变量中。
⑶若该单词在字典中,则取出该单词在字典中的编码值;否则,依次取出该单词中各字母在字典中的编码值,(编码值之间用一个空格分隔),同时产生该单词的编码(编码为字典中的最大编码值加1),加入字典中。
⑷继续扫描字符串,截取单词,并按照步骤⑶的方法进行处理,直至整个字符串编码完毕。字符串“ab ab”LZW编码过程如图所示。
(1)如果字符串为“ab bb bb”,则其LZW编码为 。
(2)请在划线处填入合适的代码。
Dim pos As Integer, a(1 To 100)As String
Private Sub Form_Load()
'将字母“a”至“z”依次存入数组元素a(1)到a(26)
End Sub
Function judge(ss As String) As Integer '判断字典中是否有ss这个单词
Dim i As
Integer judge = 0
For i = 27 To
pos
If a(i)
= Then judge = i
Exit For
End If
Next i
End Function
Private Sub Command1_Click()
Dim s As
String, i As Integer, j As Integer, k As Integer, ch As String, word As String,
result As String, Dim id As Integer, idletter As Integer
s = Text1.Text
pos = 26: i = 1
Do While i <=
Len(s)
j = i
Do While
Mid(s, j, 1) <> " "
j
= j + 1
If j >
Len(s) Then Exit Do
Loop
word =
Mid(s, i, j - i)
If
Len(word) = 1 Then '单个字母的单词
result
= result + Str(Asc(word) -Asc("a") + 1)
Else
id =
judge(word)
If id
= 0 Then '新的单词
For
k = 1 To Len(word) '依次处理该单词中的各个字母编码
ch = Mid(word, k, 1)
Next
k
pos
= pos + 1 '对该单词编码
a(pos)
= word
Else '词典中存在该单词
result
= result + Str(id) End If
End If
If j <
Len(s) Then result = result + " *"
Loop
Text2.Text =
result
End Sub
8.小李编写VB程序,实现如下功能:在文本框Text1中输入年份,点击开始命令,在Label2标签中显示判断平年闰年的结果。(闰年判断条件:①普通闰年:能被4整除但不能被100整除的年份;②世纪闰年:能直接被400整除的年份)程序运行界面如下图所示。
(1)在文本框中输入1860,输出结果是 。
(2)实现上述功能的VB程序如下,请在花线处填入合适代码。
Private Sub Command1_Click()
Dim year As Integer
year =
If Or (year Mod 400 = 0) Then
Label2.Caption = Str(year) & "是闰年"
Else
Label2.Caption = Str(year) & "是平年"
End If
End Sub
答案解析部分
1.【答案】B
【知识点】循环结构语句及程序实现
【解析】【解答】分析程序:
当i=3时,a(1)+a(2)=2+ 1=3=a(3),执行c=c+1=1;
当i=4时,a(2)+a(3)=1+3=4=a(4),执行c=c+1=2;
当i=5时,a(3)+a(4)=3+4=7<>a(5),不执行c=c+1,C=2。
故答案选B。
【分析】本题考查的是VB循环语句。for语句通过遍历序列中的元素实现循环,并通过序列的元素数量来控制循环次数,即循环过程中,序列中的每个元素都会依次被赋值给变量,并分别执行一次循环体。
2.【答案】①处改为“Text1”;②处改为“a(i)*1”;③处改为“sum mod 10”
【知识点】分支结构语句及程序实现;循环结构语句及程序实现
3.【答案】n-1;(i- 1)\n*n;(n-1)*n+ (i-1) Modn +1 step n
【知识点】常见数据类型、数组;分支结构语句及程序实现;循环结构语句及程序实现
4.【答案】a(i+(n-j)*n)
【知识点】常见数据类型、数组;过程与自定义函数;循环结构语句及程序实现
5.【答案】(1)23
(2)sum=sum+t1\10+t1 Mod 10;t1=zm(Asc(s1));s2 + Mid(wz, hang, 1)+ Mid(wz, lie, 1)
【知识点】过程与自定义函数;循环结构语句及程序实现
6.【答案】high\m或int(high/m);p=(i-1)*m+j;C=C+ Str(a(p));s=i
【知识点】过程与自定义函数;排序算法及程序实现;循环结构语句及程序实现
7.【答案】(1)12*22*28
(2)ss;result=result +str(Asc(ch)-Asc("a")+ 1)或result=result +str(Asc(ch)-96);i=j+1
【知识点】过程与自定义函数;常用标准函数
8.【答案】(1)1860是闰年
(2)val(Text1.Text);year Mod 4=0 And year Mod 100<>0
【知识点】分支结构语句及程序实现
1 / 1高中信息技术综合库——算法实例的程序实现1
一、高中信息技术综合库——算法实例的程序实现1
1.有如下VB程序段:
Dim a(1 to 5) as Integer, i as Integer, c as Integer
a(1) = 2 : a(2) = 1 : a(3) = 3 : a(4) = 4 : a(5) = 5
c = 0
For i = 3 to 5
If a(i - 2) + a(i - 1) = a(i) Then c = c + 1
Next i
Text1.Text = Str(c)
该程序运行后,文本框text1中显示的内容是( )
A.1 B.2 C.3 D.4
【答案】B
【知识点】循环结构语句及程序实现
【解析】【解答】分析程序:
当i=3时,a(1)+a(2)=2+ 1=3=a(3),执行c=c+1=1;
当i=4时,a(2)+a(3)=1+3=4=a(4),执行c=c+1=2;
当i=5时,a(3)+a(4)=3+4=7<>a(5),不执行c=c+1,C=2。
故答案选B。
【分析】本题考查的是VB循环语句。for语句通过遍历序列中的元素实现循环,并通过序列的元素数量来控制循环次数,即循环过程中,序列中的每个元素都会依次被赋值给变量,并分别执行一次循环体。
2.某仓库物品代码格式为“X-XXX-XXXXX-Y”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。校验码由前面9个X计算得到,计算方法为:从左边开始,第1个数字乘以1 加上第2个数字乘以2……依此类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。
小吴设计一个根据校验码校验物品代码的VB程序,功能如下:在文本框Text1中输入物品代码,单击“校验”按钮Command1,如果输入的校验码与计算所得的校验码一致,则输出“校验通过。”(如下左图所示),否则输出“校验不通过!”(如下右图所示)。
Dim s As String '用于存储输入的物品代码
Dim t As String
Dim i As Integer, j As Integer
Dim sum As Integer '用于存储计算校验码的累加和
Dim check_old As Integer '用于存储输入物品代码中的校验码Y
Dim check_new As Integer '用于存储按照前面9个数字X计算所得的新校验码
Dim a(1 To 10)As Integer
Private Sub Command1_Click()
'从物品代码中取出9个数字X依次存储到a(1)到a(9)中,取出校验码Y存储到a(10)中
s= Text ①
j=0
For i=1 To 13
t=Mid(s, i, 1)
If(t>="0")And(t<="9") Then
j=j+1
a(j)=Val(t)
End If
Next i
'计算新的校验码并和输入的校验码进行比较
sum=0
For i=1 To 9
sum=sum+ ②
Next i
check_new= ③
check_old=a(10)
If check_old=check_new Then
Label1.Caption="校验通过。"
Else
Label1.Caption="校验不通过! "
End If
End Sub
实现上述功能的VB程序如下,加框处代码有错,请改正。
【答案】①处改为“Text1”;②处改为“a(i)*1”;③处改为“sum mod 10”
【知识点】分支结构语句及程序实现;循环结构语句及程序实现
3.对一个n×n的矩阵以“行”为单位进行升序排序,如下表所示是一个4×4的矩阵以行为单位进行升序排序。
小杜编写了实现上述功能的程序,程序功能如下:程序运行时,在文本框Text1中输入n(1<=n<=10),单击“产生”按钮Command1产生n×n个随机数,随机数的范围为[0,9],随机存储在数组a中,并以矩阵的形式在列表框List1上显示单击“排序”按钮Command2,对矩阵以“行”为单位进行升序排序,并在列表框List2输排序后的矩阵。在程序运行界面如下图所示,实现上述功能的VB程序如下,请在划线处填入合适的代码。
Dim n As Integer
Dim a(1 To 100) As Integer
‘随机生成数并存储在List1中,代码略
Private Sub Command1_Click() ‘按行排序
Dim i As Integer, j As Integer, t As Integer
Dim s As String
s=“”
For i=1 To
k=i
For j=i+1 To
If a(j)Next j
If k<> i Then t = a(k): a(k)=a(i): a(i)=t
If I Mod n=0 Then List2.AddItem s: s=“”
Next i
End Sub
Private Sub Command2_Click() ‘按列排序
Dim i As Integer, j As Integer, t As Integer
Dim s As String
s= “”
For i=1 To i-1
k=i
For j= i+n To
If a(j)Next j
If k<> i Then t=a(k): a(k)=a(i): a(i)=t
If I Mod n=0 Then List2.AddItem s: s= “”
Next i
End Sub
【答案】n-1;(i- 1)\n*n;(n-1)*n+ (i-1) Modn +1 step n
【知识点】常见数据类型、数组;分支结构语句及程序实现;循环结构语句及程序实现
4.小岩设计了一个顺时针旋转矩阵的程序,其功能为:运行程序时,在文本框Text1中输入矩阵规模n,点击“产生矩阵”按钮Command1,在列表框List1中显示一个n*n的矩阵,该矩阵数据由从1开始的连续自然数组成。点击“旋转矩阵”按钮Command2,该矩阵顺时针旋转90度并显示在列表框List2中,此后每点一次“旋转矩阵”按钮Command2,列表框List2中显示的矩阵顺时针旋转90度。请完成程序填空。
Dim n As Integer
Dim st As String
Dim a(1 To 100) As Integer
Dim b(1 To 100) As Integer
Private Sub Command1_Click()
'产生矩阵,代码略
End Sub
Private Sub Command2_Click() '旋转矩阵
For i=1 To n '行
st= “”
For j= 1 To n '列
b((i-1)*n+j)=
st=st+adj(Str(b((i-1)*n+j)),3)
Next j
List2.AddItem st
Next i
End Sub
Function adj(a As String, n As Integer) As String
'在字符串a前加入适当的空格,使a的长度为n位,代码略
End Function
【答案】a(i+(n-j)*n)
【知识点】常见数据类型、数组;过程与自定义函数;循环结构语句及程序实现
5.在美国国家信息交换码中,ASCII值从32到127是可以打印并显示的字符,把这96个字符随机调整次序,生成密码本。根据输入的密钥和明文,单击“加密”按钮Command1,输出密文。基本算法如下:
1)用数组mab分别记录1~96个字符的ASCII值,用数组zm记录对应字符在密码本中位置,如mab(9)=65,表示密码本中第9个字符是“A”,则对应的zm(65)=9;
2)把密钥中每个字符的ASCII值的各个数字进行累加(如Hi分别为(7+2)+(1+0+5)),将累加的和除以9取余数后加7,作为将密码本转换成二维表的列数;
3)每个明文在转换后二维表中位置作为密文,该位置是用十六进制表示的行号和列号。
程序运行的界面如下图所示:
实现上述功能的VB程序如下,请回答以下问题:
(1)若输入密钥为“AB”,则根据算法及密码本,字母“A”加密后的密文是 。
(2)请在划线处填入合适的代码。
Dim Mab(96) As Integer '存储密码本中每个字符的ASCII值
Dim zm(127) As Integer '存储ASCII值32至127的字符在密码本数组mab中的下标
Private Sub Form_Load()
'产生密码本及96个字符在密码本中位置,代码略。
End Sub
Function p(s As String) As Integer
Dim i As
Integer, t1 As Long
Dim sum As
Integer, s1 As String
t1=0
i=1
Do While i<=Len(s)
s1=Mid(s,
i, 1)
t1=Asc(s1)
i=i+1
Loop
p=sum Mod 9+7
End Function
Private Sub Command1_Click()
Dim i As
Integer, t As Integer, hang As Integer
Dim s As
String, s1 As String, Lie As Integer
List1.Clear
s1=Text1.Text
t=p(s1)
Label5.Caption=
“将密码本换成一张”+Str(t)+ “列的二维表”
i=1
Do While i<=96
s=s+Chr(Mab(i))+
“”
If i Mod
t=0 Or i=96 Then
List1.AddItem
s
s= “”
End If
i=i+1
Loop
wz=
“123456789ABCDEF”
s=Text2.Text
For i =1 To
Len(s)
s1=Mid(s,
i, 1)
hang=(t1-1)\t+1
lie=(t1-1)
Mod t+1
s2=
Next i
Text3.Text=s2
End Sub
【答案】(1)23
(2)sum=sum+t1\10+t1 Mod 10;t1=zm(Asc(s1));s2 + Mid(wz, hang, 1)+ Mid(wz, lie, 1)
【知识点】过程与自定义函数;循环结构语句及程序实现
6.数组a中存放着1到20间的正整数,要求对其中的元素进行分段排序,在文本框Text2中输入每段元素的个数,在文本框Text3中显示每段降序排序后的数据,其中多余的元素不做处理。具体界面如下图所示:
实现该功能的VB程序如下,请在划线处填入合适的代码:
Dim a (0 To 100) As Integer
Const high=16
Private Sub Form_Load()
'产生high个随机数,并显示在文本框Text1,代码略
End Sub
Private Sub Command1_Click()
Dim p As Integer, q As Integer, t As Integer
Dim m As Integer, n As Integer, k As Integer
m=Val(Text2.Text)
For i=1 To
c=“”
For j=1 To m-1
q=i*m
k=sort(p, q)
If a(k)<>a(q) Then
t=a(p): a(p)=a(k): a(k)=t
End If
Next j
Text3.Text=Text3.Text+ “”+c
Next i
End Sub
Function sort(f As Integer, g As Integer) As Integer
s=f
For i=f+1 To g
If a(i)>a(s) Then
End If
Next i
sort=s
End Function
【答案】high\m或int(high/m);p=(i-1)*m+j;C=C+ Str(a(p));s=i
【知识点】过程与自定义函数;排序算法及程序实现;循环结构语句及程序实现
7.LZW编码是一种自适应词典编码,通过建立一个字典,实现字符的编码。假设输入的字符串中仅有小写字母和空格,编码方法如下:
⑴初始时,建立一个空字典,把26
个小写字母加入字典中。26 个小写英文字母编码为 1-26,字母“a”的编码为 1,字母“b”的编码为2,其它字母的编码依次增加。
⑵从字符串第一个位置开始扫描,若遇到空格(空格用“*”表示),则得到一个单词,截取该单词并存入变量中。
⑶若该单词在字典中,则取出该单词在字典中的编码值;否则,依次取出该单词中各字母在字典中的编码值,(编码值之间用一个空格分隔),同时产生该单词的编码(编码为字典中的最大编码值加1),加入字典中。
⑷继续扫描字符串,截取单词,并按照步骤⑶的方法进行处理,直至整个字符串编码完毕。字符串“ab ab”LZW编码过程如图所示。
(1)如果字符串为“ab bb bb”,则其LZW编码为 。
(2)请在划线处填入合适的代码。
Dim pos As Integer, a(1 To 100)As String
Private Sub Form_Load()
'将字母“a”至“z”依次存入数组元素a(1)到a(26)
End Sub
Function judge(ss As String) As Integer '判断字典中是否有ss这个单词
Dim i As
Integer judge = 0
For i = 27 To
pos
If a(i)
= Then judge = i
Exit For
End If
Next i
End Function
Private Sub Command1_Click()
Dim s As
String, i As Integer, j As Integer, k As Integer, ch As String, word As String,
result As String, Dim id As Integer, idletter As Integer
s = Text1.Text
pos = 26: i = 1
Do While i <=
Len(s)
j = i
Do While
Mid(s, j, 1) <> " "
j
= j + 1
If j >
Len(s) Then Exit Do
Loop
word =
Mid(s, i, j - i)
If
Len(word) = 1 Then '单个字母的单词
result
= result + Str(Asc(word) -Asc("a") + 1)
Else
id =
judge(word)
If id
= 0 Then '新的单词
For
k = 1 To Len(word) '依次处理该单词中的各个字母编码
ch = Mid(word, k, 1)
Next
k
pos
= pos + 1 '对该单词编码
a(pos)
= word
Else '词典中存在该单词
result
= result + Str(id) End If
End If
If j <
Len(s) Then result = result + " *"
Loop
Text2.Text =
result
End Sub
【答案】(1)12*22*28
(2)ss;result=result +str(Asc(ch)-Asc("a")+ 1)或result=result +str(Asc(ch)-96);i=j+1
【知识点】过程与自定义函数;常用标准函数
8.小李编写VB程序,实现如下功能:在文本框Text1中输入年份,点击开始命令,在Label2标签中显示判断平年闰年的结果。(闰年判断条件:①普通闰年:能被4整除但不能被100整除的年份;②世纪闰年:能直接被400整除的年份)程序运行界面如下图所示。
(1)在文本框中输入1860,输出结果是 。
(2)实现上述功能的VB程序如下,请在花线处填入合适代码。
Private Sub Command1_Click()
Dim year As Integer
year =
If Or (year Mod 400 = 0) Then
Label2.Caption = Str(year) & "是闰年"
Else
Label2.Caption = Str(year) & "是平年"
End If
End Sub
【答案】(1)1860是闰年
(2)val(Text1.Text);year Mod 4=0 And year Mod 100<>0
【知识点】分支结构语句及程序实现
1 / 1