实验二:表的排序、索引与统计

  • 格式:doc
  • 大小:26.50 KB
  • 文档页数:4

计算机Visual FoxPro程序设计教程实验报告
2013
年 4 月 25 日
姓 名 学 号 年 级
11级

专 业 汉语言文学 班 级
实验题目:表的排序、索引与统计

实验目的:
1、掌握表中数据的排序与索引,数据记录顺序查询和索引查
询。
2、掌握表的数据求和、求平均值、统计和分类汇总等操作。

实验内容:
利用实验一建立的表student.dbf,完成下列操作:
1、显示总成绩在前5名的学生记录;
2、统计少数民族女生的人数,并把它存入变量A中;
3、分别求男、女学生的平均年龄;
4、建立一个结构复合索引文件,其中包括两个索引:
A :记录以学号降序排列;
B:记录以姓名降序排列,姓名相同时则按出生年月升序排列;
5、对第4步建立的索引,测试Find、Seek命令的用法;
6、按性别对数学与外语成绩进行汇总;
7、将student.dbf倒置浏览,并存入fstudent.dbf中(即fstudent.dbf
中的首记录在fstudent.dbf中为末记录)。
实验步骤:
1、Visual FoxPro 中没有一条命令能完成按序显示的任务,要显示
总分在前5名的学生名单,可使用索引加显示两条命令来实现。
USE student
INDEX ON sx+wy TAG cj DESC
LIST NEXT 5
2、在Visual FoxPro 的命令窗口中,输入:
COUNT FOR ssmz AND xb=”女”TO a
?a
3、student.dbf表中没有年龄字段,可使用字段表达式
(DATE()-csny)/365来计算每人的年龄。
CALCULATE AVG((DATE()-csny)/365) FOR xb=”男”TO nan
CALCULATE AVG((DATE()-csny)/365) FOR xb=”女”TO nv
?nan,nv
4、在Visual FoxPro 的命令窗口中,输入:
INDEX ON xh TAG xh DESC
INDEX ON xm STR(DATE()-csny) TAG xm_csny DESC
5、如果要查找学号为“009905”的同学记录,要先将索引标记“xh”
设为主控索引,然后进行相应的查找,要查找姓名为“张小强”的学
生记录也与之类似,具体操作命令是:
SET ORDER TO xh
FIND 009905
SEEK “009905”
x=”009905“
FIND &x
SEEK x
SET ORDER TO xm_csny
FIND张小强
DISP
SEEK “张小强”
6、在Visual FoxPro 的命令窗口中,输入:
USE student
INDEX ON xb TAG xb
TOTAL ON xb TO cjhz FIELDS sx,wy
USE cjhz
BROWSE
7、在Visual FoxPro 的命令窗口中,输入:
USE student
INDEX ON RECN() TAG rec DESC
BROWSE
COPY TO fstudent
USE fstudent
BROWSE
分析与体会:
注意中英文替换,仔细检查中英文标点符号,以防不能执行命令。

实验指导教师 实验成绩