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、有如下售书数据表BOOK.DBF,BOOK.DBF中的记录如下:
书号 单价 数量 总计 B0168 19.8 3 B6915 12.6 36 B9023 40.0 100 B4682 18.0 40 B6329 28.0 56 B8127 2.0 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” N8=N8+1 S8=S8+成绩 ENDCASE ENDSCAN P2=S2/N2 P5=S5/N5 P8=S8/N8 ? “000002号课程选课人数”,N2, “000002号课程平均分”,P2 ? “000005号课程选课人数”,N5, “000005号课程平均分”,P5 ? “000008号课程选课人数”,N8, “000008号课程平均分”,P8 USE SET TALK ON RETURN 8、设有一成绩表score.dbf,它由以下字段组成:姓名(C,8)、平时成绩(N,6.2)、期末成绩(N,6.2)、总成绩(N,6.2)、等级(C,6)。其中前3项已有数据,用SCAN循环编写程序计算并填写每一记录的“总成绩”和“等级”字段,他们的计算方法分别为: 1)总成绩计算方法:总成绩=平时成绩×30%+期末成绩×70% 2)等级计算方法: 总成绩≥90 “等级”为“优秀”; 75≤总成绩<90 “等级”为“良好”; 60≤总成绩<75 “等级”为“合格”; 总成绩<60 “等级”为“不合格”。 SET TALK OFF CLEAR USE SCORE SCAN REPLACE 总成绩 WITH 平时成绩*0.3+期末成绩*0.7 IF 总成绩>=90 REPLACE 等级 WITH “优秀” ENDIF IF 总成绩>=75 AND 总成绩<90 REPLACE 等级 WITH “良好” ENDIF IF 总成绩>=60 AND 总成绩<75 REPLACE 等级 WITH “合格” ENDIF IF 总成绩<60 REPLACE 等级 WITH “不及格” ENDIF ENDSCAN SET TALK ON RETURN 9、从键盘输入任一小于10的自然数N,求N的阶乘。 SET TALK OFF CLEAR S=1 INPUT “N=?” TO N FOR T=1 TO N S=S*T ENDFOR ?”S=”,S SET TALK ON RETURN 10、set talk off clear open database student use stud accept “请输入学生的姓名:” to xm locate for 姓名=xm ? “学生”+xm+”的基本情况如下:” ? “学号”+学号 ? “性别”+性别 ? “班级名”+班级名 ? “地址”+地址 Close database Set talk on return 11、set talk off clear open database student use stud accept “请输入待查学生姓名:” to aaa locate for 姓名=aaa if found() ? “姓名:”+姓名 ? “性别:”+性别 ? “出生日期:”+dtoc(出生日期) Else ? “查无此人!” Endif Close database Set talk on return 12、set talk off clear open database student use stud do while .not.eof() if 性别=”男” display endif skip enddo close database set talk on return 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《Visual Foxpro》综合复习资料(3)在线全文阅读。
相关推荐: