学进去-教育应平等而普惠
试题
类型:操作题
难度系数:0.15
所属科目:高中信息技术
回文数是从左向右读和从右向左读结果一样的数字串,例如:1和363都是回文数。编写VB程序,构造一个大于给定正整数n的最小回文数p。构造方法如下:
①根据数字串n的左半部分子串st,构造对称的右半部分,生成回文数p。
②若p>n,则p即为最小回文数,如:98712→98789。
③若p≤n,则需重新构造p,方法是:从右向左查找字符串st中第一个非“9”的字符,
若不存在,则形成“10…0”的回文数p,p的长度比n的长度多1位,如9999→10001。
若存在,则将第一个非“9”字符加1,并将该字符后面部分用字符“0”填充,最后构造对称的右半部分,生成回文数p,如98992→99099.如图所示,在文本框Text1中输入正整数n,单击“求解”按钮Command1,在文本框Text2中输出最小回文数。

实现上述功能的VB程序如下,请回答下列问题:
(1)如果n为6999,则p为__________。
(2)请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim n As String,st As String,p As String
Dim k As Integer,i As Integer,j As Integer
n = Text1.Text
k = Len(n)
st = Mid(n,1,(k + 1)\2)
p = st
For i = k \2 To 1 Step -1
p = p + Mid(n,i,1)
Next i
If _____Then
i =(k + 1)\2
Do While i > 0
If Mid(st,i,1)= "9" Then _______
Else Exit Do
Loop
If i < 1 Then
p = "1"
For i = 2 To k
p = p + "0"
Next i
p = p + "1"
Else
p = Mid(st,1,i - 1)
p = p + Chr(Asc(Mid(st,i,1))+ 1)
For j = i + 1 To k - i
p = p + "0"
Next j
If ______Then p=p + Mid(p,i,1)
For j = i - 1 To 1 Step -1
p = p + Mid(p,j,1)
Next j
End If
End If
Text2.Text = p
End Sub
编辑解析赚收入
收藏
|
有奖纠错

同类型试题

优质答疑

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

用户名称
2019-09-19

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

用户名称
2019-09-19
我要答疑
编写解析
解析:

奖学金将在审核通过后自动发放到帐

提交
我要答疑
我要答疑:
提交