表循环嵌套分支

表循环嵌套分支

ID:24390604

大小:27.50 KB

页数:4页

时间:2018-11-14

表循环嵌套分支_第1页
表循环嵌套分支_第2页
表循环嵌套分支_第3页
表循环嵌套分支_第4页
资源描述:

《表循环嵌套分支》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实例讲解:1.在考生文件夹下有数据表CHENGJI.dbf和KECHENG.dbf,表结构如下:CHENGJI(学号(C8),姓名(C10),课程(C10),成绩(N8,2))KECHENG(课程(C10),最高分(N8,2),最低分,平均分,总分)CHENGJI表用于记录学生的考试成绩,其中一个学生可以有多项记录(登记一个学生的多门成绩)。KECHENG表的内容是所开课程,一门课程只有一个记录(表中有固定的已知数据)。请在考生文件夹下编写符合下列要求的程序prog1:(1)计算表CHENGJI中每门课程的最高分,并将结果存入KECHENG表的最高分字段中;{笔记本上有}(2)根

2、据上面的计算结果,生成一个按最高分降序排序的新表jcc(课程名(C10)最高分(N8,2),最低分,平均分,总分)。{用SQL}[分析]  (1)、本题希望修改内容的表是KECHENG,所以应在KECHENG表中循环  (2)、修改KECHENG要以chengji表为依据,但成绩表用locafor按课程查找时,第一次遇到的并不是最高分,如何能让查找是第一次遇到的就是最高分?---如果将chemgji按照课程、成绩(降)排序后,配合KECHENG使用,就可以大大简化程序2.有CHENGJI表和XUESHENG表,各表结构如下:CHENGJI表(姓名(C10)、课程名(C10)、成绩

3、(N8,2))XUESHENG表(姓名(C10)、平均分(N16,2))CHENGJI表用于记录学生的考试成绩,但一个学生可以有多条记录(登记一个学生的多门成绩)。XUESHENG表是学生信息,一个学生只有一条记录(表中有固定的已知数据)。 写程序完成:根据CHENGJI表计算每个学生的平均分,并将结果存入XUESHENG表的平均分字段。[分析:](1)此处有两张表:要填写的表XUESHENG、填写依据CHENGJI。考虑应以哪张表做循环?(要x填写的表)(2)每遇到一个学生,要按其姓名到另张表中寻找依据。所以"姓名"是两张表联系的桥梁(3)用内存变量转存"姓名"是较易理解的方法

4、*prog2.prgCleaSettalkoffclosall      &&多表操作时,建议写上此句Sele0    useCHENGJIaliacjsele0    useXUESHENGaliaxsselexsscan  xm=姓名  selecj       avertopjffor姓名=xm                &&avertopjffor姓名=xs.姓名  selexs                         &&切换到与循环对应的工作区       repl平均分withpjfendscanbrow            &&看是否预期结果clos

5、eall  &&关闭所有表settalkoncancel3.有数据表YUANGONG和ZHICHENG,表结构如下:YUANGONG(职工编码(C10),姓名(C10),职称(C10),工资(N10,2),新工资(N10,2))ZHICHENG(职称(C10),增加百分比(N10,2))写符合下列要求的程序:(1)将YUANGONG表复制到JCC表中;(2)在JCC表中给每个员工增加工资,新工资=工资*(1+增加百分比/100),将计算结果存入相应记录的“新工资”字段中。[分析:](1)此处有两张表:要填写的表YUANGONG、填写依据ZHICHENG。考虑应以哪张表做循环?(2

6、)每遇到一种"职称",要按其职称到另张表中寻找依据。所以"职称"是两张表联系的桥梁4.有两个数据表“价格.dbf”和“销售.dbf”,表结构如下:价格(货号(C10),单价(N10,2)) 销售(货号(C10),销量(N8))写符合下列要求的程序:(使用dowhile循环)1)将价格表复制生成包含货号和单价两个字段的表PRICE.dbf;2)在PRICE.dbf表中,根据销售表中的销量来调整单价,一件都没有卖掉的商品单价调整为原来的8折,销量大于等于5的商品单价上浮10%。[分析:](1)此处有两张表:要改写的表PRICE、填写依据销售。考虑应以哪张表做循环?(2)每遇到一种商品

7、,要按其货号到另张表中寻找依据。所以"货号"是两张表联系的桥梁*prog4.prgsettalkoffclear*(1)use价格  copytoPRICEuse*(2)sele0    usePRICEaliaprsele0    use销售aliaxsselepr    dowhile!eof()       hh=货号       selectxs              sum(销量)tonfor货号=hh  &&考虑到可能是明细帐,所以没直接使用语句:n=销量    

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。