1、上机操作题-试卷 10 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下简单应用: 1用 SQL 语句完成下列操作:将选课在 5 门课程以上(包括 5 门)的学生的学号、姓名、平均分和选课门数按平均分降序排序,并将结果存放于数据库表 stu_temp 中(字段名为学号、姓名、平均分和选课门数)。 2建立一个名为 menu_lin 的下拉式菜单,菜单中有两个菜单项“查询”和“退出”。“查询”项下还有一个子菜单,子菜单有“按姓名”和“按学号”两个选项。在“退出”菜单项下创建过程,该过程负责使程序返回到系统菜单。(分数:2.00
2、)_二、简单应用题(总题数:1,分数:2.00)2.设计名为 mystu 的表单(控件名为 form1,文件名为 mystu)。表单的标题为“学生学习情况统计”。表单中有一个选项组控件(命名为 myOption)和两个命令按钮“计算”(名称为 Command1)和“退出”(名称为Command2)。其中,选项组控件有两个按钮“升序”(名称为 Option1)和“降序”(名称为 Option2) 运行表单时,首先在选项组控件中选择“升序”或“降序”,单击“计算”命令按钮后,按照成绩“升序”或“降序”(根据选项组控件)将选修了“C 语言”的学生学号和成绩分别存入 stu_sort1.dbf 和st
3、u_sort2.dbf 文件中。 单击“退出”按钮关闭表单。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下完成如下操作: 1打开数据库 SCORE_MANAGER,该数据库中含 3 个有联系的表STUDENT、SCORE1 和 COURSE,根据已经建立好的索引,建立表之间联系。 2为 COURSE 表增加字段:开课学期(N,2,0)。 3为 SCORE1 表“成绩”字段设置字段有效性规则:成绩=0,出错提示信息是:“成绩必须大于或等于零。” 4将 SCORE1 表“成绩”字段的默认值设置为空值(NULL)。(分数:2.00)_上机操作题-试卷 10 答案解
4、析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下简单应用: 1用 SQL 语句完成下列操作:将选课在 5 门课程以上(包括 5 门)的学生的学号、姓名、平均分和选课门数按平均分降序排序,并将结果存放于数据库表 stu_temp 中(字段名为学号、姓名、平均分和选课门数)。 2建立一个名为 menu_lin 的下拉式菜单,菜单中有两个菜单项“查询”和“退出”。“查询”项下还有一个子菜单,子菜单有“按姓名”和“按学号”两个选项。在“退出”菜单项下创建过程,该过程负责使程序返回到系统菜单。(分数:2.00)_正确答案:(正确答案:1在
5、Visual FoxPro 的命令窗口中输入下列命令: SELECT 学生.学号,学生.姓名,AVG(选课.成绩) as 平均分,; COUNT(选课.课程号) AS 选课门数; FROM 学生! 学生 INNER JOIN 学生! 选课; INNER JOIN 学生! 课程; ON 课程.课程号=选课.课程号; ON 学生.学号=选课.学号; GROUP BY 学生.姓名; HAVING COUNT(选课.课程号)=5; ORDER BY 3 DESC: INTO TABLE stu_temp.dbf)解析:二、简单应用题(总题数:1,分数:2.00)2.设计名为 mystu 的表单(控件名
6、为 form1,文件名为 mystu)。表单的标题为“学生学习情况统计”。表单中有一个选项组控件(命名为 myOption)和两个命令按钮“计算”(名称为 Command1)和“退出”(名称为Command2)。其中,选项组控件有两个按钮“升序”(名称为 Option1)和“降序”(名称为 Option2) 运行表单时,首先在选项组控件中选择“升序”或“降序”,单击“计算”命令按钮后,按照成绩“升序”或“降序”(根据选项组控件)将选修了“C 语言”的学生学号和成绩分别存入 stu_sort1.dbf 和stu_sort2.dbf 文件中。 单击“退出”按钮关闭表单。(分数:2.00)_正确答案
7、:(正确答案:第一步:在 Visual FoxPro 主窗口中按下组合键 Ctrl+N,系统弹出“新建”对话框,在文件类型中选择“表单”,单击“新建文件”按钮,系统将打开表单设计器;或直接在命令窗口中输入“crea form mystu”。 第二步:单击工具栏按钮“表单控件工具栏”,在弹出的“表单控件”对话框中,选中“选项按钮组”控件,在表单设计器中拖动鼠标,这样在表单上得到一个“选项按钮组”控件optiongroup1,用类似的方法为表单加入一个“命令按钮”控件 command2,两个“文本框”控件 text1和 text2。 相关控件的属性值如下所示: 对象 属性 属性值 Form1 Ca
8、ption 学生学习情况统计 Optiongroup1 Name myOption MyOption.option1 Caption 升序 MyOption.option2 Caption 降序 Command1 Caption 计算 Command2 Caption 退出 *命令按钮 command1(计算)的 Click 事件代码如下* DO CASE CASE THISFORM.myOption.VALUE=1 SELECT 学生.学号,选课.成绩; FROM 学生! 课程 INNER JOIN 学生! 选课; INNER JOIN 学生! 学生; ON 学生.学号=选课.学号; ON
9、课程.课程号=选课.课程号; WHERE AT(“C 语言“,课程.课程名称)0; ORDER BY 选课.成绩; INTO TABLE stu_sort1 CASE THISFORM.myOption.VALUE=2 SELECT 学生.学号,选课.成绩; FROM 学生! 课程 INNER JOIN 学生! 选课;INNER JOIN 学生! 学生; ON 学生.学号=选课.学号; ON 课程.课程号=选课.课程号; WHERE AT(“C 语言“,课程.课程名称)0; ORDER BY 选课.成绩 DESC; INTO TABLE stu_sort2 ENDCASE *命令按钮comma
10、nd2(退出)的 Click 事件代码如下* THISFORM.RELEASE)解析:三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下完成如下操作: 1打开数据库 SCORE_MANAGER,该数据库中含 3 个有联系的表STUDENT、SCORE1 和 COURSE,根据已经建立好的索引,建立表之间联系。 2为 COURSE 表增加字段:开课学期(N,2,0)。 3为 SCORE1 表“成绩”字段设置字段有效性规则:成绩=0,出错提示信息是:“成绩必须大于或等于零。” 4将 SCORE1 表“成绩”字段的默认值设置为空值(NULL)。(分数:2.00)_正确答案:(正确答案:1打开数据库设计器,在父表中选中主索引,按住鼠标拖动至子表相应的普通索引上,释放鼠标,联系即已建立。 2打开 COURSE 表表设计器,将光标移动到最后的空字段格中,输入新的字段名、字段类型及长度。 3打开表设计器,选中“成绩”字段,在“字段有效性”中的“规则”文本框中填入:成绩=0,在“信息”文本框中填入:“成绩必须大于或等于零”,单击“确定”按钮。 4在表设计器对话框中,选择“成绩”字段,单击 NULL 列下的按钮(表示此列允许空值),然后再在“字段有效性”中的默认值中填入.NULL.,单击“确定”。)解析: