VFP编程题答案

更新时间:2023-11-25 04:59:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

顺序结构程序设计

1.从键盘输入长方体的长、宽、高,求长方体的表面积。

input “输入长方体的长:” to x input “输入长方体的宽:” to y input “输入长方体的高:” to z s=2*x*y+2*x*z+2*y*z ?”长方体的表面积为:”,s

2.从键盘输入圆的半径,计算圆的面积。

input “输入圆的半径:” to r s=3.14*r^2

?”圆的面积为:”,s

3.建立数据库XS,将表XSQK.DBF添加到该数据库,并浏览该表所有数据,最后关闭数据库。

Create database xs Add xsqk Browse Close all

4.在表XSQK.DBF中,查找出生日期为1983年10月8日的记录,并显示该记录;继续查找下一个满足上述条件的记录,并显示该记录。 Use xsqk

Locate for 出生日期 ={^1983-10-8} Display Continue Display Use

分支结构程序设计 1. 从键盘输入一个数,若为正数则输出,非正数则结束。 input “输入一个数:” to x if x>0 ?x endif return

2. 求一元二次方程AX2+BX+C=0的实根。 input “输入系数A:” to a input “输入系数B:” to b input “输入系数C:” to c m=b^2-4*a*c if m>=0

x1=(-b+sqrt(m))/(2*a)

x2=(-b-sqrt(m))/(2*a) ?”x1=”,x1, ”x2=”,x2 else ?”方程无实根!” endif

3. 从键盘输入一个待查学生的学号,在表XSQK.DBF中查找。若能找到,则显示该记录,否则,显示信息“该学号不存在”。

use xsqk accept “输入待查学生学号:” to x locate for 学号=x if not eof() display else ?“该学号不存在” Endif Use

4. 从键盘输入一个自然数,若为偶数则输出信息“偶数”,若为奇数则输出信息“奇数”。

input “输入一个自然数:” to x if x%2=0 ?” 偶数” else ?” 奇数” endif return

5. 计算函数Y的值。 x>=0 3ex+2-1

Y= 2X+5 X<0 5.答案

input “输入X的值:” to x if x>=0 f=3*exp(x+2)-1 else f=2*x+5 endif

?”f=”,f return

1

6. 计算运费。车站从甲地到乙地托运行李,收费规定:若行李重量不超过50公斤,每公斤收费0.5元;若行李重量超过50公斤,其超重部分加收0.4元。编写计算运费的程序。 clear

input \请输入行李的重量:\if n<50

s=n*0.5 else

s=n*0.5+(n-50)*0.4 endif

?\应收费用为:\ return

7.编写根据当前日期显示当前季节的程序。 clear

input \请输入日期:\m=month(d) do case

case m>=3 and m<=5 ?\春季\

case m>=6 and m<=8 ?\夏季\

case m>=9 and m<=11 ?\秋季\ otherwise ?\冬季\ endcase return

8.某百货公司为促销,采用购物打折扣的优惠办法,每位顾客一次购物:

(1)1000元至1999元之间者,按九五折优惠。 (2)2000元至2999元之间者,按九折优惠。 (3)3000元至4999元之间者,按八五折优惠。 (4)5000元以上者,按八折优惠。

编写程序,输入购物款数,计算并输出优惠价。 clear

input \输入你的购物金额:\do case

case d>=1000 and d<=1999 m=d*0.95

case d>=2000 and d<=2999

2

m=d*0.9

case d>=3000 and d<=4999 m=d*0.85 case d>=5000 m=d*0.8 endcase

?\打折后的金额是:\return

9.编写程序,输入一个数字(0~7),显示其对应星期几的中英文信息。 clear

input \请输入一个数字:\do case case n=1 M=\星期一(Monday)\ case n=2 M=\星期二(Tuesday)\ case n=3 M=\星期三(Wednesday)\ case n=4 M=\星期四(Thursday)\

case n=5 M=\星期五(Friday)\ case n=6 M=\星期六(Saturday)\ case n=0 M=\星期日(Sunday)\ otherwise M=\重新输入\ endcase

?\您输入的是:\ return

10. 设计个人纳税计算程序。“税法”规定,使用超额累进税率,以每月收入额减去1600元后的余额,为应纳税所得额,其税率见下表: 级数 全月应纳税所得额 税率(%) 1 2 3 4 不超过500元 500~2000元 2000~5000元 5000~20000元 5 10 15 20 5 20000~40000元 25 6 40000~60000元 30 7 60000~80000元 35 8 80000~100000元 40 9 100000元以上 45 clear input \请输入月收入:\s=n-1600 do case

case s<=500 r=s*0.05 case s<=2500 r=s*10 case s<=5000 r=s*15 case s<=20000 r=s*20 case s<=40000 r=s*25 case s<=60000 r=s*30 case s<=80000 r=s*35

case s<=100000 r=s*40 otherwise r=r*0.45 endcase

?\应纳税额为:\return 循环结构

1. 求S=1+2+3+??+100 set talk off clear s=0 i=1

do while i<=100 s=s+i i=i+1 enddo

?\的和为:\Return

2. 求N!的值。 (N!=1*2*3*??*N) clear

input \请输入n的值:\s=1

for i=1 to n s=s*i endfor ?\return

3. 计算101~500之间的所有奇数之和。 clear s=0

for i=101 to 500 if i%2!=0 s=s+i endif endfor

?\的奇数和为:\return

4. 输出100~1000之间能被37整除的数。set talk off clear

for i=100 to 1000 if i7=0 ?i endif endfor set talk on return

5.求S=1!+2!+3!+??+10! clear s=0 T=1

for I=1 to 10 T=T*i S=S+1 endfor ?\return

3

6.求S=1+(1+2)+(1+2+3)+??+(1+2+3+??+N) clear

input \请输入N的值:\s=0 t=0 for i=1 to N t=t+i s=s+t endfor

?\总和为:\

7. 从键盘输入一个数,判断其是否为素数。 clear

input \请输入数字:\s=0

for i=2 to n-1 if n%i=0 s=1 endif endfor if s=0

?n,\是素数\ else

?n,\不是素数\ endif return

8. 输出从2000到2100年之间的所有闰年。 提示:设N为年份数,若N能满足如下两个条件中任一个,则N为闰年。

(1)N能被4整除并且N不能被100整除, (2)或者N能被400整除 clear

for i=2000 to 2100

if (i%4=0 and i0!=0) or i@0=0 ?i endif endfor return

9. 在表BXCJ.DBF中,已经有数学、计算机、英语、物理四门课程的成绩,编写程序根据每人的平均成绩,在“总评”字段中填入对应的等级。

4

等级评定办法是:90分以上为优,75~89为良,

60~74为及格,60分以下为不及格。 clear

use bxcj exclusive avgscore=0 scan

avgscore=(数学+计算机+物理+英语)/4 do case

case avgscore>=90 M=\优\ case avgscore>=75 M=\良\

case avgscore>=60 M=\及格\ case avgscore<60 M=\不及格\endcase

?replace 总评 with M endscan use return

10.编写程序,分别统计表XSQK.DBF中男、女同学的人数。 clear

use xsqk exclusive store 0 to m,n scan if 性别='男' m=m+1 else n=n+1 endif endscan

?\男生人数:\?\女生人数:%use return

11.编写程序,中记录倒序逐条显示。 clear

use xsqk exclusive n=reccount()

go bottom for i=1 to n display wait skip -1 endfor set talk on return

12.编写程序,使表GONGZI .DBF中每条记录根据职称情况自动进行工资普调。普调规定是:9×1=9 9×2=

18 ?? ?? ?? 9×9=81 clear

for x=1 to 9 &&外层循环 y=1

do while y<=x && 内层循环 z=x*y

?? str(y,1)+\ \ y=y+1 教授每人增加100元,副教授每人增加80元,讲师每人增加50元,助教每人增加30元。 set talk off clear

use gongzi exclusive browse last do case case 职称='教授' replace 基本工资 with 基本工资+100 for 职称=\教授\ case 职称='副教授' replace 基本工资 with 基本工资+80 for 职称=\副教授\ case 职称='讲师' replace 基本工资 with 基本工资+50 for 职称=\讲师\ case 职称='助教' replace 基本工资 with 基本工资+30 for 职称=\助教\endcase browse last use

set talk on return

13.编写程序,输出如下乘法表。

1×1=1

2×1=2 2×2=4

3×1=3 3×2=6 3×3=9 ?? ?? ??

?? ?? ?? ??

5

enddo ?

endfor

6

本文来源:https://www.bwwdw.com/article/du0t.html

Top