等信息,无此人就显示“查无此人”?
12?逐条显示在STUDENT数据库的STUD表中性别为“男”的所有记录?
《Visual Foxpro》综合复习资料参考答案
一?单项选择题
1 - 5?B A B D A 6 -10?D B B B D 11-15?C C C C A 16-20?C D B B A 21-25?D C D A B 26-30?A B C D B 31-35?D B A B C 36-40?B D D A A
二?判断题
1 - 5?√√××× 6-10?√×××√
三?填空题
1?关系模型 2?字段变量 3?true
4?”123456” 5?.t.
6?去掉重复记录 7?6
8?通用型 9?关系
10?查询条件
11?性别=”女” and 民族=”回族” 12?input
13?age is null 14?exit
15?display all 16?distinct 17?having 18?insert
19?where 职工.职工号=工资.职工号 20?备注
四?程序填空题
1?use 供应商.db?”123”$电话?skip 2?R<=24?R?R=R+1 3?D?A?C
4?FROM?AND?部门号 desc
5?C?B?A
五?程序设计题
1?假设约定年龄不超过35岁的职工为青年职工;年龄在36岁至45岁的职工为中年职工;年龄超过45岁的职工为老年职工?从键盘输入任一职工姓名在STUD表中查找,显示其姓名?年龄以及所属的职工类型?
SET TALK OFF CLEAR USE STUD
ACCEPT '请输入所查的姓名: ' TO XM LOCATE FOR 姓名=XM IF .NOT. FOUND()
”查无此人” ELSE
NL=YEAR(DATE())-YEAR(出生日期) DO CASE
CASE NL<=35
姓名,NL,”青年职工” CASE NL>35 .AND. NL<=45 姓名,NL,”中年职工” OTHERWISE
姓名,NL,”老年职工”
ENDCASE
ENDIF USE
SET TALK ON RETURN
2?编程显示STUD表中所有男学员的姓名?工龄及工资?
SET TALK OFF USE STUD SCAN IF 性别=”男”
姓名,YEAR(DATE())-YEAR(工作时间),工资 ENDIF ENDSCAN USE
SET TALK ON RETURN
3?从键盘输入N个数存入数组A中,找出其中的最大数?
SET TALK OFF CLEAR
INPUT “N=” TO N DIMENSION A(N) FOR I=1 TO N
INPUT \输入一个数\ TO A(I)
ENDFOR
MAX=A(1) &&给存放最大数的变量MAX赋初值 FOR I=2 TO N
IF A(I) >MAX MAX=A(I) ENDIF ENDFOR ”MAX=”,MAX SET TALK ON RETURN
4?打开STUD表,分别统计所有姓“张”学员的平均年龄和所有姓“王”学员的平均年龄?
SET TALK OFF CLEAR CNTZH=0 SUMZH=0 CNTWANG=0 SUMWANG=0
DO WHILE NOT EOF()
IF 姓名=”张” CNTZH=CNTZH+1 SUMZH=SUMZH+(YEAR(DATE())-YEAR(出生日期)) ENDIF
IF 姓名=”张” CNTWANG=CNTWANG+1
SUMWANG=SUMWANG+(YEAR(DATE())-YEAR(出生日期)) ENDIF ENDDO
“张姓学员的平均年龄为:”,SUMZH/CNTZH
“王姓学员的平均年龄为:”,SUMWANG/CNTWANG SET TALK ON RETURN
5?有如下售书数据表,中的记录如下:
书号 单价 数量 总计 B0168 3 B6915 36 B9023 100 B4682 40 B6329 56 B8127 20
要逐条计算总计并填入“总计”字段之中,计算按照如下规则: 若数量小于等于10,总计等于“单价*数量” 若数量大于50,总计等于“单价*数量*(1-5/100)”
若数量在11与50之间,总计等于“单价*数量(1-10/100)” SET TALK OFF
CLEAR USE BOOK
DO WHILE NOT EOF() IF 数量<=10 REPLACE 总计 WITH 单价*数量 ENDIF
IF 数量>50 REPLACE 总计 WITH 单价*数量*(1-5/100) ENDIF
IF 数量>=11 AND 数量<=50 REPLACE 总计 WITH 单价*数量*(1-10/100) ENDIF SKIP ENDDO
SET TALK ON RETURN
6?从键盘输入任一自然数N,求小于等于N的自然数之和? SET TALK OFF CLEAR
S=0 T=0
INPUT “N=” TO N DO WHILE T S=S+T ENDDO ”S=”,S SET TALK ON RETURN 7?根据表SCORE(学号,课程号,成绩)中的数据,统计选修课程号分别为“000002”?“000005”和“000008”课程的人数以及这些课程的平均分? SET TALK OFF STORE 0 TO S2,S5,S8 STORE 0 TO N2,N5,N8 USE SCORE SCAN DO CASE CASE 课程号=”000002” N2=N2+1 S2=S2+成绩 CASE 课程号=”000005” N5=N5+1 S5=S5+成绩 CASE 课程号=”000008”
相关推荐: