1、 1. 新建商品数据表SB.DBF,字段有:商品号(C,5),商品名(C,8),单价(N,5,2),出厂单价(N,5,2),产地(C,6)。并添加如下记录: 商品号(C,5),商品名(C,8),单价(N,6,2),出厂单价(N,6,2),产地(C,6)。 10001 电视机 800.0 500.0 青岛 20001 电子字典 360.0 200.0 深圳 10002 手机8210 980.0 6
2、00.0 北京 30001 MP3 800.0 560.0 广州 10003 商务通 890.0 460.0 深圳 设计一个名称为MY_FORM的表单,上面有“浏览”、“调整”、“备份”和“退出”四个命令按钮,“商品名称”标签和文本框text1。 1) 在text1中输入文本,单击“浏览”按钮时,显示商品名含有该文本的所有商品记录。 2) 单击“调整”按钮时,将“商品号”前两位编号为“10”的商品的“单价”修改为出
3、厂单价的110%。 3) 单击“备份”按钮时,将“商品表”进行备份(使用命令COPY TO ),备份文件名为“商品表备份.DBF”, 4) 单击“退出”按钮时,关闭表单。 2. 设计一个菜单。 主菜单 子菜单 任务 文件(F) 建查询 (C) Ctrl+C 新建立查询,表自备,查询内容、文件名自定 保存(S) 关闭 (G) 编辑(E) 输入 (I) 修改 (E) 修改该查询 运行(R) Ctrl+R 运行该查询显示结果 退出(X) 过程 提示“退出菜单?”,退出恢复系统隐含菜单 3.全国居民电价分为三个阶梯 所谓阶
4、梯式电价,是指按照用户电力消费量分段定价,用电越多,支付的电价水平呈阶梯状逐级递增的一种电价定价机制。实行阶梯电价原则是满足基本需求,限制过多的需求征求意见稿就电量档次划分提供两个选择方案: 第一个方案: 第一档:电价月均用电量110度,该档内电价不变动; 第二档:用电量为110度至210度,提价标准不低于每度5分钱; 第三档:用电量210度以上,每度电价上调不低于0.2元。 第二个方案: 第一档:用电量140度以内电价每度提高1分钱; 第二档:用电量为140度至270度,每度电价提高不低于5分钱; 第三档:用电量270度以上,每度电价提高不低于0.2元。 目前青岛居民
5、用电收费标准为每千瓦时0.5469元 编写程序根据居民用电量计算电费。 分别按第一、第二、和目前方案计算电价 3. 设计一个电话计费程序。假定每分钟通话费用为0.12元。要求:表单窗口中用标签形式列出开始时间、结束时间、通话时间及应付金额(元),再设计一个开始按钮(按下后开始计时)和计费按钮(按下后显示结束时间、通话时间及费用) 4. 建立“学生管理” 数据库,在其中新建“成绩”数据表并任意输入3条记录,结构如下:学号C(8),姓名C(8),计算机N(5.1),英语N(5.1),数学N(5.1),总成绩N(5.1)。建立表单(bd1.scx),用表格显示该数据表,添加标签“计算机
6、平均成绩”及显示该数据的文本框。添加“计算”、“退出”命令按钮,并编写代码。“计算”Click代码:计算“总成绩”字段的值(总成绩=计算机+英语+数学),计算“计算机平均成绩”的值并在文本框显示。“退出”:结束表单运行。 5. 建“订货管理”数据库。在其中新建数据表customer,表结构如下: 客户号(C/8)、客户名(C/10)、地址(C/20)、电话(C/12)。以客户号建立主索引。 新建数据表order_list,表结构如下: 客户号(C/8)、订单号(C/10)、日期(D)、总金额(N/12,2)。以客户号建立普通索引,并与customer建立表间永久关系。 1)两个数
7、据表各添加3条记录(保证两个表的客户号存在一对一关系)。 2)新建项目“订单”并将数据库添加到该项目中。 3)在项目中新建表单。如下:当指针指向首记录“上一条”不能用;当指针指向末记录“下一条”不能用 6. 首先创建一个student.dbf数据表 其结构为学号(C,3),姓名(C,6),性别(C,2),出生日期(D,8)。记录内容自定。要求,根据输入限制条件的上限和下限来查找数据表中的记录,表单会显示查找到的结果。程序的演示效果如图所示。 7. 建立一表单文件BF.SCX. 如图 要求: (1)在“建表”按钮中编写代码,使用SQL语句建
8、立一XSDA.DBF表,字段结构:学号 C(6); 姓名 C(10) ; 成绩N(5,1) 再用SQL命令方式添加三条记录,如下: 学号 姓名 成绩 100101 德华 89 100202 学友 90 100103 曼玉 88 (2)在”排序按钮”中编写SQL代码,完成按成绩降序查询。 (3)在”分组按钮”中编写SQL代码,完成按班级(学号前四位表示班级)分组,并显示班级总成绩。 (4)在”输出按钮”中编写SQL代码,完成将成绩在80—89之间的同学信息输出到表xsda1.dbf中。 8. 有学生管理数据库BOOK,数
9、据库中有SCORE表(含有学号、物理、高数、英语和学分)等5个字段,其中前4项已有数据。 请编写符合下列要求的程序并运行程序。 设计一个名MYFORM4的表单,表单中有两个命令按钮,按钮的名称分别是CMDYES和CMDNO,标题分别为“计算”和“关闭”。程序运行时,单击“计算’’按钮应该完成下列操作: 1)计算每一个学生的总学分并存入对应的“学分”字段。学分的计算方法是:物理60以上(包括60分)为2学分,否则为0分;高数60分以上(包括60分)为3学分,否则为0分;英语60以上(包括60分)为4学分,否则为0分。 2)根据上面的计算结果,生成一个新的表
10、XF,(要求表结构的字段类型与SCORE表对应字段的类型一致),并且按学分升序排列,如果学分相等,则按学号降序排序。 单击“关闭”按钮,程序终止运行。 9. 有一学生管理数据库stu,该数据库中有CHENGJI表和XUESHENG表,各表结构如下: 1) XUESHENG表(学号C(9)、姓名C(10)、平均分N(7,2)), 该表是学生信息,—个学生只有一个记录,“学号”字段是表的主关键字。 2) CHENGJI表(学号c(9)、课程号c(3)、成绩N(7,2),该表用于记录学生的考试成绩, 一个学生可以有多项记录,(登记一个学生的多门成绩),其中,字段“学号”
11、与“课程名”的组合构成表CHENGJI的主关键字。 请编写符合下列要求的程序并运行程序。 设计一个名为FORM_STU的表单、表单中有两个命令按钮,按钮的名称分别是CMDYES和CMDNO,标题分别为“统计”和“关闭”。 程序运行时,单击“统计”按钮应完成下列操作: 1)根据CHENGJI表计算每个学生的平均分,并将结果存入XUESHENG表的平均分字段。 2)根据上面的计算结果,生成一个新的表PINGJUN,该表的字段按顺序取自XUESHENG表的学号、姓名和平均分3项,并按平均分升序排序,如果平均分相等,则按学号升序排序。 单击“关闭”按扭,程序
12、终止运行。 10. *设计一个能进行查询的表单,界面如图所示。当输入学生姓名并单击“查询统计”按钮时,会在右边的表格内显示该同学所选各科的成绩,并在左边相应的文本框内显示其中的最高分、最低分以及平均成绩。单击“退出”按钮将关闭表单。 11. 有“学生管理”数据库。在其中新建数据表student,表结构如下: 学号(C/8)、姓名(C/10)、专业号(C/4)、成绩(N/4)。以学号建立主索引,以专业号建立普通索引。建数据表class,表结构如下: 专业号(C/4)、专业名称(C/10),以专业号建立主索引,并与student(专业号为外部关键字段)建立表间永久关系。 1)
13、 两个数据表各添加3条记录(要有”英语”专业的记录)。 2) 新建项目“管理”并将数据库添加到该项目中。 3) 在项目中新建表单FORM1。选择选项按钮后“运行”可以完成相应的操作。 12. 新建“学生管理”数据库。在其中新建数据表student,表结构如下: 学号(C/8)、姓名(C/10)、专业号(C/4)、成绩(N/4)。以学号建立主索引,以专业号建立普通索引。新建数据表class,表结构如下: 专业号(C/4)、专业名称(C/10),以专业号建立主索引,并与student(专业号为外部关键字段)建立表间永久关系。 1) 两个数据表各添加3条记录(要有”英语”专业的记
14、录)。 2) 新建表单如下图。选择选项按钮后“运行”可以完成相应的操作(用SQL语句实现)。 13. 设计如上图表单,要求对于学生管理数据库std.dbc用SQL语句完成如下功能: (1) 点击学生名单显示学号,姓名(若选中复选框显示详细信息,则显示学号, 姓名,性别,出生日期,入学日期,专业)。 (2) 点击计算成绩,重新计算总成绩。 (3) 点击显示成绩,按照总成绩升序或降序显示std_cj表所有字段。 (4) 点击选课统计,所有学生的学号,姓名及选课的门数。 14. 设计如上图表单,要求用SQL语句完成如下功能: 1) 击学生成绩显示学号,总成绩(若选中复选框显示详细信息,则显示学号, 姓名,性别,专业,总成绩)。 2) 点击班级成绩表,按照班级(学号字段的前4位为班级号)统计各班级平均成绩。 3) 点击课程列表,显示所有选课的代码,名称及学生数。 15. 设计一个数据查询表单,可以查询优秀的学生成绩、总成绩的前5名、以及成绩不及格的学生名单。 (14-16题的”学生管理”数据库std.dbc见压缩的文件std.zip)






