Visual FoxPro程序设计基础实例文档格式.docx
- 文档编号:5786584
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:22
- 大小:214.07KB
Visual FoxPro程序设计基础实例文档格式.docx
《Visual FoxPro程序设计基础实例文档格式.docx》由会员分享,可在线阅读,更多相关《Visual FoxPro程序设计基础实例文档格式.docx(22页珍藏版)》请在冰点文库上搜索。
USEC:
MCOUNT=0
FORREC=1TORECCOUNT()&&RECCOUNT()为该库中的记录数
GOREC
IF英语<
75
LOOP
ENDIF
DISPLAY
MCOUNT=MCOUNT+1
ENDFOR
"
英语成绩不小于75分的总数为:
MCOUNT
USE
RETURN
例2-4显示表cj.dbf中英语成绩小于90分的学生。
USECJ
DOWHILE.T.(**或DOWHILE.NOT.EOF())
IF英语>
=90
SKIP(或**LOOP)
ENDIF
DISPLAY
WAIT"
按任一键继续显示.…"
SKIP
ENDDO
USE
例2-5对成绩表cj.dbf查询,若首记录的平均分数大于60分,则显示及格;
成绩不及格”否则显示不及格。
CLEAR
USEC:
IF平均分>
60
?
姓名+"
成绩及格"
ELSE
成绩不及格"
执行结果如下:
例2-6对成绩表cj.dbf查询,根据该学生的平均分进行分类:
优秀90<
=平均分
优良80<
=平均分<
90
良好70<
80
及格60<
70
不及格平均分<
60
程序为:
DOCASE
CASE平均分>
=90
姓名+"
:
成绩优秀"
=80
姓名+"
成绩优良"
=70
成绩良好"
=60
成绩及格"
OTHERWISE
成绩不及格"
ENDCASE
例2-7设计5乘5的乘法表
clear
x=1
dowhilex<
=5
y=1
dowhiley<
=x
s=x*y
?
str(y,1)+"
*"
+str(x,1)+"
="
+str(s,2)+"
y=y+1
enddo
x=x+1
例2-8DOCASE……ENDCASE命令的嵌套用法.
SETTAlKOFF
1…………录入"
2………查询"
3…………修改"
4…………打印"
ACCEPT"
输入选择(0-4):
TOMSELECT
CASEMSELECT="
l"
DOAPP&
&
录入程序
2"
DOQUER&
查询程序
CASEMSElECT="
3"
DOMOD&
修改程序
4"
1--打印A类表"
2--打印B类表"
3--打印C类表"
输入选择(1-3):
TOMY
CASEMY="
1"
DOPRINTA
DOPRINTB
DOPRINTC
ENDCASE
例2-9显示成绩库CJ.DBF中记录号为偶数的前三个学生记录。
CLEAR
forrec=2to6STEP2
gorec
SKIP2
ENDFOR
USE
RETURN
例2-10编程计算:
S=l!
+2!
+3!
+...+10!
的值。
要求用过程求阶乘。
SETTALKOFF
CLEAR
PUBLICT
S=0
&
FORN=1TO10
forn=1to10
DOJC
S=S+T
S="
S
SETTALKON
PROCEDUREJC&
过程放在调用它的上层程序之后
PRIVATES&
这里的S是局部变量,与主程序中的S占用不同的存贮单元
T=1
FORS=1TON
T=T*S&
这里T为N!
的值
str(N,2)+"
!
+str(T,8)
STR(N,2)
例2-11主程序MAIN.PRG中调用过程SUBl,SUB2,主程序如下:
#######1"
DOSUB1
#######2"
DOSUB2
#######3"
RETURN
过程SUB1.PRG如下:
PROCEDURESUB1
********1"
RETURN
过程SUB2.PRG如下:
PROCEDURESUB2
*******2"
例2-12求职工的平均工资(职工信息档案为:
DA.DBF)
clear
usec:
\000\da
averageall基本工资toa
职工平均工资:
+str(a,8,2)
use
settalkon
return
例2-13执行以下程序段:
PUBLICA
PRIVATEB
A="
A
B="
B
例2-14显示库文件CJ.DBF的姓名及总分字段,要求用模式符定义显示总分字
\000\cj
DOWHILE.NOT.EOF()
@ROW()+1,4SAY"
姓名:
@ROW(),COL()+1SAY姓名PICTURE"
@JXXXXXXXX"
@ROW(),COL()+1SAY"
总分:
@ROW(),COL()+1SAY总分PICTURE"
999.99"
SKIP
ENDDO
例2-15根据下面程序求出结果。
x1=4
dowhilex1>
=1
x2=1
dowhilex2<
x1
x2*x1
x2=x2+1
enddo
x1=x1-1
settalkon
例2-16字母大小写变换程序。
accept"
请输入一字符串:
tox
i=1
s="
dowhilei<
=len(X)
s=substr(x,i,1)+s
s=s+substr(x,i,1)
i=i+1
X="
upper(x)
lower(s)
例2-17求1--10的阶乘
dowhile.t.
k=1
j=1
dowhilej<
i+1
k=k*j
j=j+1
k
ifi>
10
exit
endif
例2-18字符串颠倒程序
x="
子女"
y="
i=len(x)
dowhilei>
y=y+substr(x,i-1,2)
i=i-2
y
例2-19计算100以内自然数的和
store0tox,y
x=x+1
y=y+x
ifx>
=100
exit
y"
+str(y,5)
例2-20写数学公式程序:
Y=3*X(x>
0),Y=0(x<
0);
input"
请输入X的值"
ifx>
0
Y的值等于"
3*x
else
0
例2-21求三个数的最大数;
请输入A的值"
toA
请输入B的值"
toB
请输入C的值"
toC
ifA>
=BandA>
=C
MAX="
A
ifB>
=AandB>
B
else
C
endif
例2-22求三个数的最大数;
max(A,B,C)
例2-23求用年月日表示今天。
xdate=str(year(date()),4)+"
年"
xdate=xdate+str(month(date()),2)+"
月"
xdate=xdate+ltrim(str(day(date()),2))+"
日"
xdate
例2-24显示课号为C301的记录;
\000\student.dbf
m=0
scanfor课号="
C301"
display
m=m+1
endscan
总数为:
m
例2-25统计分数>
80的人数;
n=0
scanfor分数>
80
n=n+1
n
例2-26求100以内奇数的和;
s=0
fori=1to99step2
s=s+i
endfor
s
return
例2-27求1到11中奇数的和;
fori=11to1step-2
例2-28求出下列程序执行的结果;
n=1
K=1
dowhilek<
=10
ifint(k/2)#k/2
s=s+k
else
n=n+k
k=k+1
s
n="
settalkon
程序执行的结果为:
例2-29求下列程序执行的结果;
dowhilex<
101
ifmod(x,3)=0
loop
y=y+1
str(y,2)
程序执行的结果:
y=68
例2-30求下列程序执行的结果;
dimensiona(7)
dowhilei<
=7
a(i)=3*i+1
a(a
(1)+1),a(a(3)-5)-1
例2-31求下列程序执行的结果;
fori=4to1step-1
j=1
2*i-1
s=s+"
@ROW()+1,20-i+1says
endfor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Visual FoxPro程序设计基础实例 FoxPro 程序设计 基础 实例
![提示](https://static.bingdoc.com/images/bang_tan.gif)