题库 高中信息

题干

学校对高一年级500位同学进行月零花钱的调查,要进行如下统计:
(1)统计月平均零花钱金额
(2)统计月零花钱超过300元同学的数量。
以下流程图是该算法的描述请补充流程图,并写出相应的程序。
变量说明:数组money存放500位同学的月零花钱金额;number存放月零花钱金额超过300元同学的数量。
(1)   ;(2) ;(3) 。
上一题 下一题 0.99难度 填空题 更新时间:2016-03-08 07:49:06

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

同类题1

某数据加密方法描述如下:
先将字符转化为二进制的位数据并显示在文本框text2中,数据位数显示在标签Label1中
以16个数据为一段,将k个待加密数据依次分割成若干个数据段,剩余数据(个数小于16)为独立数据段。
数据加密规则:
数据个数等于16的数据段,在段内进行位置变换,得到加密数据段。
数据个数小于16的数据段,直接得到加密数据段。
依次合并加密数据段,即为最后的加密数据。
位置变换的规制,方法如下:

具体界面如下图所示:

(1)已知k=38,则数组元素b(26)对应值是数组a中的______________________。
(2)实现该功能的VB程序如下:

Private Sub Command1_Click()

Dim a(1 To 1000) As Integer, b(1 To 1000) As Integer

Dim n As Integer, m As Integer

Dim s As String, s1 As String, c As Integer, ch As String

s = Text1.Text: Text2.Text = ""

n = Len(s)

k = 1

For i = 1 To n '获取字符的二进制数据存放在数组a()中

  n = Asc(Mid(s, i, 1))

  Do While n <> 0

   a(k) = n Mod 2

   n = n \ 2

   Text2.Text = Text2.Text + Str(a(k))

   k = k + 1

  Loop

Next i

     ①  

List1.Clear

 

For m = 1 To (k - 1) \ 16    '对字符二进制按规则进行位变换,变换后的数据存放在数组b()中并输出

  For i = 1 To 4

    b(16 * (m - 1) + 4 * (i - 1) + 1) = a((m - 1) * 16 + i)

    ②

  Next i

  For i = 1 To 3

    b(16 * (m - 1) + 4 * (i - 1) + 3) = a((m - 1) * 16 + 10 + i)

    b(16 * (m - 1) + 4 * (i - 1) + 2) = a((m - 1) * 16 + 17 - i)

  Next i

  For i = 1 To 2

    b(16 * (m - 1) + 13 + i) = a((m - 1) * 16 + 4 + i)

  Next i

 

 For i = 1 To 4

  s1 = ""

  For j = 1 To 4

  s1 = s1 + Str(b(16 * (m - 1) + (i - 1) * 4 + j))

  Next j

  List1.AddItem s1

  Next i

List1.AddItem ""

Next m

 

s1 = ""

For i = ((k - 1) \ 16) * 16 + 1 To k - 1

   b(i) = a(i)

    If ③  Then

    s1 = s1 + Str(a(i))

    List1.AddItem s1

    s1 = ""

    Else

    s1 = s1 + Str(a(i))

    End If

Next i

List1.AddItem s1

 

Text3.Text = ""

For i = 1 To k - 1

Text3.Text = Text3.Text + Str(b(i))

Next i

End Sub

实现上述功能,请在划线处填入适当的代码:
程序中①处填入的是________________________________________。
程序中②处填入的是________________________________________。
程序中③处填入的是________________________________________。

同类题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