①编写程序并执行,计算“01”组(歌手编号的前2位)歌手的得分并将结果存入自由表final.dbf中。final.dbf包含“歌手姓名”和“得分”两个字段,“得分”取各评委所打分数的平均值。final.dbf中的结果按“得分”降序、“歌手姓名”降序排列。请

admin2017-03-29  28

问题 ①编写程序并执行,计算“01”组(歌手编号的前2位)歌手的得分并将结果存入自由表final.dbf中。final.dbf包含“歌手姓名”和“得分”两个字段,“得分”取各评委所打分数的平均值。final.dbf中的结果按“得分”降序、“歌手姓名”降序排列。请将程序存储在two.prg中,否则不得分。
②新建一个文件名和表单名均为score.form的表单,向表单添加一个命令按钮Commandl.标题为“计算”,为该命令按钮的Click事件增加命令,调用two.prg程序执行。最后运行该表单,并单击“计算”按钮执行two程序。
③新建一个项目文件score.project,将自由表“歌手表”、“评委表”和“评分表”以及表单文件score_form加入该项目,然后将项目文件连编成应用程序文件score_app。

选项

答案步骤1:命令窗口执行:MODIFY COMMAND two,打开程序文件编辑器。输入如下程序代码并保存(以下SQL查询语句是通过查询设计器生成): SELECT歌手姓名,AVG(分数)AS得分FROM歌手表,评分表; WHERE歌手表,歌手编号=评分表.歌手编号AND LEFT(歌手表,歌手编号,2)="01"; GROUP BY歌手表.歌手编号; ORDER BY得分DESC,歌手姓名DESC INTO TABLE final 步骤2:命令窗口执行: CREATE FORM score_form,打开表单设计器新建立表单。 步骤3:向表单添加一个命令按钮。修改表单( Forml)的Name属值为:score_form,命令按钮(Command1)的Caption属性值为:计算。 步骤4:命令按钮(Commandl)Click事件代码: DO two。单击“常用”工具栏中的“运行”查看结果,保存表单。 步骤5:命令窗口执行命令: CREATE PROJECT scorejoroject,新建一个项目管理器。在“数据”选项卡中选“自由表”,单击右边的“添加”按钮,将考生文件夹下的“歌手表”、“评委表”和“评分表”依次加入到项目中;以同样的方法,在“文档”选项卡中,将score_form表单添加到项目中。 步骤6:单击项目管理器右侧的“连编”按钮打开“连编选项”对话框,选中“连编应用程序”,单击“确定”,在“另存为”对话框的“应用程序名”中输入:score_app,单击“保存”按钮。 SQL分组与计算查询、程序文件的建立与执行、连编应用程序。

解析 本题主要考查了程序文件的建立与运行:SQL分组计算查询:连编应用程序等。
关键是SQL分组计算查询的设计,可参照以下步骤:
SELECT短语中指定要输出的字段,包括通过AVG()函数计算生成的新字段。FROM.JOIN…ON…等短语指定查询数据源,并建立表间联系,查询源表为“歌手”表和“评分”表,两个表的联接字段为“歌手编号”。GROUP BY短语对表记录分组,分组字段为“歌手编号”。ORDER BY短语设置两个字段的排序方式。ASC表示升序,为系统默认的排序方式,可省略:DESC短语表示降序,不可缺省。
最后将查询结果通过INTO TABLE命令输出到指定的数据表中。
调用程序文件的命令是DO<文件名>:连编应用程序可通过单击项目管理器右侧的“连编”命令打开“连编选项”对话框完成。
转载请注明原文地址:https://jikaoti.com/ti/bpk0FFFM
0

最新回复(0)