2012河北省对口高考计算机专业理论试卷 联系客服

发布时间 : 星期日 文章2012河北省对口高考计算机专业理论试卷更新完毕开始阅读a791343bf61fb7360a4c6521

SET RELATION TO 订单号 INTO A DO WHILE .NOT.EOF()

REPLACE 总金额 WITH temp.总金额 SKIP ENDDO DO WHIL .T.

ACCE \请输入商品名(输入0退出)\ IF SHANG ='0' EXIT ELSE

SELECT 商品号 FROM goods WHERE 商品名=SHANG INTO ARRAY arr SNO=arr(1)

SELECT 订单号 FROM orderitem WHERE 商品号=SNO INTO TABLE WJ USE WJ

DO WHILE NOT EOF() MM=订单号

SELECT 总金额 FROM ORDERLIST WHERE 订单号=MM INTO ARRAY arr SUM1=SUM1+arr(1) SKIP ENDDO ?SUM1 ENDIF ENDDO

运行上面的程序,输入“汇编语言”,显示的结果是:

七、程序改错(本大题共2小题,每题5分,共10分。每个程序有两处错误,请在答题纸上写出错误行代码和修改后的正确代码,改错不扣分,请将答案填写在答题纸上)

1.下面的程序是将一输入的字符串进行分类赋值,方法:从字符串的最左端开始截取一字符,然后进行判断,数字字符放入数组a中,将其它字符放入数组b中,然后继续处理下一个字符,直至全部处理完,最后分类打印,程序中有两处错误,请将错误行和正确的全行写在答题纸相应的横线上。( Visual Basic题)

Dim a(100) As Integer Dim b(100) As Integer Dim c As String Dim i As Integer Dim j As Integer Dim k As Integer Dim m As Integer Dim w As String

c = InputBox(\k = Len(c)

For i = 1 To k w = Right(c, 1) c = Right(c, k - 1)

If w >= \a(j) = w: j = j + 1 Else

b(m) = Asc(w): m = m + 1 End If c=c-w Next i Print

For i = 0 To j - 1 Print a(i); Next i Print

For i = 0 To m - 1 Print Chr(b(i)); Next i Print

2.窗体中(如图所示)有一定时器控件(名称Timer1), 每2秒钟触发一次Timer事件,有两个标签用于提示后面的控件名称,一文本框Text1,一滚动条(名称HS1)。窗体启动后(此图为窗体刚启动时的状态),滚动框根据计时器事件向右移动,但当单击滚动框左端后,滚动框开始向左移动,当单击滚动框右端后,滚动框开始向右移动,文本框中的文字大小随滚动条的值变化。窗体通用部分声明了两个变量,后面给出了三个事件过程。程序中共有两处错误分布在三个事件过程中(每个事件过程中最多有一处错误),请将错误行和正确行写在答题纸相应的横线上。( Visual Basic题)(提示:Form_Activate()表示窗体变为活动窗体后触发的事件)

窗体通用部分声明代码:

Dim A As Integer ‘变量A用于确定滚动框向左(为0)还是向右(为1)滚动 Dim W As Integer

Private Sub Form_Activate() W = HS1.Value

A=0 End Sub

Private Sub HS1_Change() If W

Private Sub Timer1_Timer()

If Text1.FontSize < 10 Then Text1.FontSize = 11 If Text1.FontSize > 80 Then Text1.FontSize = 79 If A = 1 Then

Text1.FontSize = Text1.FontSize + 1 Else

Text1.FontSize = Text1.FontSize - 1 End If End Sub

八、程序填空(本大题共7个空,每空5分,共35分。按程序要求在答题纸上填入相应的内容,使程序完整正确,请将答案填写在答题纸上)

1.下面的程序前部分功能考生自己分析,后部分功能是输入一数据,然后在数组中找此数据,若找不到则程序结束,若找到将数组元素下标小于此数据下标的数据由大到小排列并输出,请在空白位置填写正确的命令(Visual Basic题)。

Dim a(9) As Integer Dim i As Integer Dim t As Integer

a(0) = 20 + Int(Rnd * 91) For i = 1 To 9

t = 20 + Int(Rnd * 91) If t < a(i - 1) Then i = i - 1 Else a(i) = t End If Next i For i = 0 To 9 Print a(i);

Next i Print

t = InputBox(\For i = 0 To 9

If t = (1) Then Exit For End If Next i

If i = 10 Then End i = i - 1

For k = 0 To i / (2) t = a(k) a(k) = a(i - k) a(i - k) = t Next k For i = 0 To 9 Print a(i); Next i

2.下面程序可以打印一个九九表完整九行或部分行,思路是在窗体中加入两个文本框,第一个文本框(text1)用于指定输出九九表的起始行,第二个文本框用于指定输出九九表的结束行,如在第一个文本框中输入2,第二个文本框中输入6,打印出如图所示的2到6

行。命令按钮的单击事件中有打印九九表的程序,请在空白位置填写正确的命令(程序要求:第一个文本框数字必须比第二个文本框小,两个文本框中不能为空)(Visual Basic题)。

Private

Sub Command1_Click()

Dim a As Integer Dim b As Integer

If Text1.Text <> \a = Text1.Text b = Text2.Text If a < b Then Dim i As Integer Dim j As Integer