题库 高中信息

题干

有如下 VB 程序段:
n = Val(Text1.Text)
For i = 3 To 1 Step -1

If n Mod 2 = 1 Then

n = n\ 2
Else
n = 2 * n + 3
End If
Next i
Label1.Caption = Str(n)
运行该程序,在文本框 Text1 中输入 13,下列说法正确的是(   )
A.执行程序结束后,标签 Label1 显示 7B.语句“n=n\2”第一次被执行时,等式右边 n=6
C.程序结束后 i 值为 1D.语句“n=2*n+3”总共执行 2 次
上一题 下一题 0.99难度 选择题 更新时间:2019-05-11 06:11:37

答案(点此获取答案解析)

同类题1

(加试题)计算机的基本功能是计算,信息加工处理本质上都是通过计算完成的。现有一图像模糊处理的算法,以10*10像素图像的模糊处理为例,具体算法如下:
(1)各像素点的颜色信息值(介于0至255之间的一个正整数),存储至数组a中。
(2)给定模糊处理的模糊中心位置p和模糊半径r(r>1),中心位置p即为半径为1的区域,
①确定模糊中心点在如下数阵中的位置。若模糊中心为36时,该模糊中心在数阵中对应位置为第4行第6列;

②根据中心点和模糊半径确定模糊处理的像素点的范围。
(3)依序将模糊处理范围内的像素点进行模糊处理。模糊处理的方式为:最外侧的像素点颜色信息不变,中间各像素点的新颜色信息值为该像素点上下左右相邻四个像素点颜色信息值的平均值。
程序运行时,在文本框Text1中输入模糊的中心点p,在文本框Text2中输入模糊的半径r,窗体加载,通过列表框List1输出图像模糊处理前的信息,单击命令按钮Command1后通过列表框List2输出模糊后的图像信息。程序运行效果如图2所示。相应的模糊中心位置由椭圆圈注,中间各像素点由矩形框圈注

实现上述功能的VB程序如下。请回答下列问题:
(1)若以a(48)为模糊中心,布置成如第17题图1所示数阵后模糊中心处于数阵的第________行。
(2)请在划线处填入合适的代码。
Const n = 10
Dim a(1 To n * n) As Integer  '介于0至255之间的值,存储10*10图像像素点的颜色信息
Private Sub Form_Load()
'读取100个正整数,存储在数组a中以表示10*10图片的像素点颜色信息,代码略。
'并按右对齐方式将该图片的各像素点颜色信息输出至列表框List1中,代码略。
End Sub
Private Sub Command1_Click()
Dim r As Integer, p As Integer
Dim i As Integer, j As Integer, k As Integer
p = Val(Text1.Text) :r = Val(Text2.Text)
①________
i = 1
Do While j > n
j = j - n
i = i + 1
Loop
'确定模糊处理的范围,处理范围的起始行,结束行,起始列,结束列保存到i1,i2,j1,j2中,代码略
For i = i1+1 To i2-1    '中间像素点的模糊处理
For j = j1+1 To j2-1
②________
a(k) = ave(k)
Next j
Next i
'并按右对齐方式将该图片的各像素点颜色信息输出至列表框List2中,代码略。
End Sub
Function ave(k As Integer) As Integer
ave = ③________
End Function

同类题4

用VB设计一个模拟选手得分程序,在文本框Text1中输入裁判人数(人数大于2),然后点击Command1按钮,在List1中产生70到100的随机数为裁判的打分,去除一个最高分,去除一个最低分,取其他裁判打分的平均分作为最终得分显示在文本框Text2中,运行效果如图所示。

(1)若要在程序运行时,修改窗体显示的标题为“得分计算”,则下面语句可行的是__________。
(单选,填字母:A.Command1.Caption=“得分计算”/B.Form1.Name=“得分计算”/C.Form1.Text=“得分计算”/
A.Form1.Caption=“得分计算”)
(2)实现上述功能的VB程序如下,请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim n As Integer   '裁判人数
Dim max As Integer, min As Integer, sum As Integer
Dim AveScore As Single  '存储最终得分
n = Val(Text1.Text): sum = 0
If n <= 2 Then MsgBox ("输入数据要大于2,请重新输入!")
If n > 2 Then
List1.Clear
Randomize
score = Int(Rnd() * 31) + 70
List1.AddItem Str(score)
_______________________ ' ①
max = score
min = score
For i = 2 To n
score = Int(Rnd() * 31) + 70
List1.AddItem Str(score)
If score > max Then max = score
If score < min Then min = score
sum = sum + score
Next i
AveScore = ______________________ '②
Text2.Text = Str(AveScore)
End If
End Sub
(3)若要将最终得分保留一位小数(四舍五入),下列代码可行的是______________________。
A.AveScore=int(AveScore+0.5)
B.AveScore=int(AveScore*10+0.5)/10
C.AveScore=int(AveScore*100+0.5)/100