在考生文件夹下有学生管理数据库stu_7,该库中有chengji表和xuesheng表,结构如下: chengji表(学号C(9)、课程号C(3)、成绩N(7,2)),该表用于记录学生的考试成绩,一个学生可以有多项记录(登记一个学生的多门成绩)。 x

admin2009-02-15  27

问题 在考生文件夹下有学生管理数据库stu_7,该库中有chengji表和xuesheng表,结构如下: chengji表(学号C(9)、课程号C(3)、成绩N(7,2)),该表用于记录学生的考试成绩,一个学生可以有多项记录(登记一个学生的多门成绩)。
   xuesheng表(学号C(9)、姓名C(10)、平均分N(7,2)),该表用于记录学生信息,一个学生只有一个记录(表中有固定的已知数据)。
   请编写并运行符合下列要求的程序:
   设计一个名为form_stu的表单,表单中有两个命令按钮,按钮的名称分别为cmdyes和cmdno,标题分别为“统计”和“关闭”。
   程序运行时,单击“统计”按钮应完成下列操作:
   根据chengji表计算每个学生的平均分,并将结果存入xuesheng表的“平均分”字段。
   根据上面的计算结果,生成一个新的自由表pingjun,该表的字段按顺序取自xuesheng表的学号、姓名和平均分3项,并且按平均分升序排序,如果平均分相等,则按学号升序排序。
   单击“关闭”按钮,程序终止运行。

选项

答案在命令窗口输入命令:CREATE FORM form_stu,打开表单设计器;单击表单控件工具栏上的“命令按钮”控件图标,向表单添加两个命令按钮。选中第一个命令按钮(Command1),在属性对话框中将命令按钮的Name属性值修改为cmdyes,将Caption属性值修改为“统计”,如图3-39所示。以同样的方法,将第二个命令按钮(Command2)的Name属性值修改为cmdno,将Caption属性值修改为“关闭”。 [*] 双击命令按钮cmdyes(统计),在Click事件代码中编写如下程序段: ****“统计”命令按钮的Click事件代码**** SET TALK OFF OPEN DATABASE stu_7 USE xuesheng DO WHILE NOT EOF() SELECT AVG(成绩)FROM chengji; WHERE学号=xuesheng.学号INTO ARRAY atemp REPLACE平均分WITH atemp(1,1) SELECT学号,姓名,平均分FROM xuesheng; ORDER BY平均分,学号; INTO TABLE pingjun CLOSE ALL SET TALK ON SET SAFETY ON ***************************************** 双击命令按钮cmdno(关闭),在Click事件代码中编写如下程序段: ****“关闭”命令按钮的Click事件代码**** Thisform.Release ***************************************** 保存表单,在命令窗口输入命令:DO FORM form_stu。在运行的表单界面中单击“统计”命令按钮,系统将计算统计结果并保存到新表中。

解析 本题考查的是表单设计,在设计控件属性中,不要将控件的标题(Caption)和名称(Name)属性弄混淆了,名称属性是该控件的一个内部名称,而标题属性是用来显示的一个标签名称;程序部分可以利用一个DO循环来依次浏览表中的记录,然后利用SQL语句查询符合条件的记录存放到数组中,最后利用数组保存的记录存入到新的数据表中。
转载请注明原文地址:https://kaotiyun.com/show/GqKZ777K
0

随机试题
最新回复(0)