题库 高中信息

题干

小张设计了一个“加减运算练习”VB程序。界面如下图所示。单击“出题”Command1按钮显示两个运算数和运算符号,并计数。在文本框Text1中输入计算结果后单击“判断”按钮Command2,如果计算结果正确,则得分加10分,直至完成10题测试。VB程序如下,但加下划线处代码有错,请改正。

Dim n,s As Integer    'n为试题计数器,s为得分
Dim a, b As Integer  'a,b 为两个运算数
Dim c As String 'c为运算符:"+ "表示加法,"-"表示减法
Private Sub Form_Load()
n = 0:
s = 0
End Sub
Private Sub Command1_Click()   ‘出题按钮
Randomize
n =" n" + 1
If n < 11 Then
Label1.Caption = "No:" + Str(n)
a =" Int(Rnd" * 100)  'a,b为运算数,且要求a不小于b
b =" Int(Rnd" * 100)
If   a > b   Then t =" a:" a =" b:" b = t '(1)
If  Rnd > 0.5  Then c = "+" Else  b = "-" '(2)
Label5.Caption =" Str(a)" + c + Str(b) + "="
Text1.Text = ""
Else
Command1.Caption = "完成测试"
End If
End Sub
Private Sub Command2_Click()   ‘判断按钮
If c = "+" Then
If  a + b =" Val(Text1.Text)" Then  s =" s" + 10
Else
If  a + b =" Val(Text1.Text)" Then  s =" s" + 10    '(3)
End If
Label3.Caption = "得分:" + Str(s)
End Sub
上一题 下一题 0.99难度 None 更新时间:2015-11-26 10:39:58

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

同类题1

(加试题)四宫数独规则:在4×4的格子中,根据已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个宫(粗线框区域)内均含1到4的数字并且不重复,每道数独有且仅有唯一答案。
例如,根据规则推理图1数独,在第一宫中4个格子已经3个格子分别是数字1到3,缺的数字为4,因此第一行第一格空缺的数字填4,以此类推,直至将所有格子都推理出来。
 

 

图1
图2
 
(1)根据上述规则推理,数独(图2)第一行A处应是数字______。

(2)小明编写了四宫数独推算的VB程序,单击“推算”按钮 Command1后,在列表框List1中输出数独推算过程和结果,如第17题-3题图所示。实现推算的VB程序如下,请在划线处填入合适的代码。
Dim d(1 To 16) As Integer    '数组d逐行存储四宫数独

Private Sub Command1_Click()

Dim i As Integer,flag As Boolean

For i = 1 To 16

d(i) =0    ‘值0表示该位置还未填数字

Next i

‘初始化数独中已知位置的数字

d(2) =4:d(11) =3:d(14) =2:d(16) =4

List1.Clear

'在列表框Li1中输出四宫数独,代码略

flag = False

Do While Not flag

__________
For i = 1 To 16
‘函数check(i)实现对第i位置进行推算
If d(i) = 0 Then
d(i) = check(i)
If d(i) >0 Then
flag = False
'Forniat(i,"00")函数实现将变量i的值按2个字符宽度输出
List1.Addltem"第"& Format(i,”00” & "位置填” & d(i)
End If
End If
Next i
Loop
'在列表框Lil中输出四宫数独,代码略
End Sub
根据每一行、第一列、每一个宫的已有数字进行推算
Function check(x As Integer) As Integer

Dim t(0 To 4) As Integer,m As Integer

Dim row As Integer,col As Integer,n As Integer,k As Integer

For m=0 To 4

t(m) =0

Next m

'对当前所在行列进行推算

row = (x-l)\4+l

col = ( x - l) Mod 4 + l

For m= 1 To 4

t(d( row - l) *4+m) = l
t(_______)=1

Next m

'进行宫内推算

If row < =2 And col <= 2 Then t(d(7 -x) ) = l
If row< = 2 And col > 2 Then t(d(ll - x) = l
If row > 2 And col < = 2 Then t(d(23-x) = l
If row > 2 And col > 2 Then t(d(27-x) = l
k =0

For m= l To 4

If t (m) = 0 Then n = m Else k = k + l

Next m

If _______ Then check = n Else check = 0

End Function

同类题5

小胡收集了2018届高三学生高考成绩及相关的选科情况,存入数据库中,部分界面截图如图所示:

程序功能如下:

在窗体加载时,从数据库中读取学生总数N;读取N名学生的信息存储在相关数组中。N名学生的学号依次存储在数组xh(1)~xh(n) 中;学号为i的学生的总成绩存储在数组 zf(i)中,课程选修信息存储在xk(i)中;

点击“统计”按钮后,程序筛选出所有技术考生的相关信息,并计算该学生在所有技术考生中的排名(总分相同的,排名也相同)。

实现上述功能的VB程序如下,请回答下列问题:
(1)请在划线处填入合适的代码。
Dim xh(1 To 1000) As Integer ’数据库中读取时第i为学生的学号存储在xh(i)
Dim zf(1 To 1000) As Integer ’学号为i的考生的总分存储在zf(i)
Dim xk(1 To 1000) As String ’学号为i的考生的选考课程信息存储在zf(i)
’ 数据格式 **-**-**  (如:物理-化学-生物)
Dim jspm(1 To 1000) As Integer   ’学号为i的技术选考生的总分在所有技术考生中的
’排名存储在数组jspm(i)
Private Sub Form_Load()
Dim conn   As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim  constr  as string , sql as string
Constr = "Provider=Microsoft.ace.OLEDB.12.0;"
Constr = constr &  "Data Source=" & App.Path + "\data\stu2018.accdb"
conn.ConnectionString = constr
conn.open( )
rs.Open  "select * from 2018cj  "  ,  conn
i=0
Do While Not rs.EOF
i=i+1
xh(i)=rs(“xuehao”)
zf(rs(“xuehao”)) = rs(“fenshu”)
xk(rs(“xuehao”))=rs(“xkinfo”)
【小题1】
Loop
N=i
End Sub
’判断选科信息info中是否包含科目km 
Function YouKM(ByVal km As String, ByVal Info As String) As Boolean
Dim km1 As String
YouKM = False
For i = 1 To 3
If 【小题2】 Then
YouKM = True
Exit For
End If
Next i
End Function
'为技术学科考试求名次
Private Sub Command1_Click()

Dim jsinfo(1 To 1000) As Integer    ’依次存储每个技术选考生的学号和成绩

Dim k as integer    ’存储找到的技术选考学生的数量

'将所有选考“技术”的考生学号、成绩依次存入数组jsinfo中

    k = 0
For i = 1 To n
If    【小题3】 Then
k = k + 1
jsinfo(2 * k - 1) = xh(i)
jsinfo(2 * k) = cj(xh(i))
End If
Next i
'学号为i的学生在技术选考生中的排名,存入jspm(i)中
For i = 1 To k
mc = 0
For j = 1 To k
If jsinfo (2 * j) > jsinfo (2 * i) Then mc = mc + 1
Next j
jspm(jsinfo(2*i-1))= 【小题4】

Next i

   '输出所有技术考试的学号、成绩、技术排名信息 代码略
End Sub