?CLEAR MEMORY:无条件释放所有内存变量
DBF 国家代码C(3),金牌数Ⅰ,银牌数Ⅰ,铜牌数Ⅰ
获奖牌情况.DBF 国家代码C(3),运动员名称C(20),项目名称C(30),名次Ⅰ
国家.DBF 国家代码C(3),国家名称C(20)
“金牌榜”表中一个国家对应一条记录;“获奖牌情况”表中每个项目中的各个名次都有一条记录,名次只取前3名。
为表“金牌榜”增加一个字段“奖牌总数”,同时为该字段设置有效性规则:奖牌总数>=0,应使用SQL语句:
ALTER
11.
第1题:
使用如下3个数据库表:
金牌榜.DBF 国家代码C(3), 金牌数I,银牌数I,铜牌数I
获奖牌情况.DBF 国家代码C(3), 运动员名称C(20),项目名称C(30),名次I
国家.DBF 国家代码C(3), 国家名称C(200)
“金牌榜”表中一个国家一条记录:“获奖牌情况”表中每个项目中的各个名次都有一条记录,名次只取前3名,例如:
使用“获奖牌情况”和“国家”两个表查询“中国”所获金牌(名次为1)的数量,应使用SQL语句
SELECT COUNT(*)FROM 国家 INNER JOIN获奖牌情况;
【 】国家.国家代码:获奖牌情况.国家代码;
WHERE国家.国家名称="中国" AND名次=1
第2题:
使用“获奖牌情况”和“国家”两个表查询“中国”所获金牌(名次为1)的数量,应使用SQL语句:SELECT COUNT(*) FROM 国家 INNER JOIN 获奖牌情况;______ 国家.国家代码 = 获奖牌情况.国家代码:WHERE 国家.国家名称 = “中国”AND 名次=1
第3题:
阅读以下说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。
[说明]
下面的程序演示了根据随机产生的奖牌数,生成金银奖牌榜的过程。程序使用的排序法是简单排序法。以金牌得数为例,其思想是选择最大的元素,将它交换到最前面;然后对剩下的部分采用同样的方法,直到全部排序完成。
程序界面中,左右两个文本框分别用于存放随机产生的奖牌数以及生成的奖牌榜,名为Text1和Text2,上下两个按钮分别名为Command1和Command2。代码中使用的量主要有:一维数组 cntries,用于存储10个国家的名称,二维数组medals,其元素medals(i,0)和medals(i,1)分别用于存放第i个(i从0开始)国家的金、银牌数目。
[Visual Basic代码]
Dim cntries(10) As String, medals(10,2) As Integer
’随机产生奖牌数
Sub newMedals()
…… ’为数组cntries和medals赋值
End Sub
’输出奖牌榜
Sub printOut(txt As (1) )
Dim strResuh As String, i As Integer
strResult=“国家”& Chr(9) &“金牌数”& Chr(9) &“银牌数”& vbCrLf
For i=0 To 9
strResult = strResult & cntries(i) & Chr(9) & medals(i,0) & Chr(9) & medals(i,1) & vbCrLf
Next
txt.Text = strResult
End Sub
’交换两变量的值
Sub exchange( (2) a As Variant, (2) b As Variant)
Dim temp As Variant
temp = a: a = b: b = temp
End Sub
’随机产生并输出奖牌数
Private Sub Command1_Click()
newMedals
printOut Text1
End Sub
’生成并输出奖牌榜
Private Sub Command2_Click()
Dim i,j, k As Integer, temp As String
For i = 0 To 9 ’按金牌数排序
j = i ’找到自第i个位置起全部数据中金牌得数最多者,记其下标为j
For k = i + 1 To 9
If (3) Then j=k
Next
If i < > j Then ’若i,j不等,则交换对应位置的国家名、金银牌数目
exchange cntnes(i), entries(j)
exchange medals(i, 0), medals(j, 0)
exchange medals(i, 1), medals(j, 1)
End If
Next
For i = 0 To 9 ’按银牌数进行二次排序
j = i
For k = i + 1 To 9
If medals(k,0) <> medals(j, 0) Then (4)
If (5) Then j = k
Next
If i < > j Then
exchange cntries(i), cntries(j)
exchange medals(i, 1), medals(j, 1)
End If
Next
printOut Text2
End Sub
第4题:
下列程序实现的功能是( )。 USE奖牌表 DO WHILE NOT EOFIF奖牌数>=10 SKIP L00P ENDIF DISPLAY SKIP ENDDO DO USE
A. 显示所有奖牌数多于或等于10的记录
B. 显示所有奖牌数少于10的记录
C. 显示第一条奖牌数多于或等于10的记录
D. 显示第一条奖牌数少于10的记录
第5题:
将金牌榜.DBF中的新增加的字段奖牌总数设置为金牌数、银牌数、铜牌数3项的和,应使用SQL语句______ 金牌榜 ______ 奖牌总数=金牌数+银牌数+铜牌数