posts - 2,  comments - 0,  trackbacks - 0
  2005年5月19日

clear
a=0
b=0
@ 1,2 say "请输入 a:" get a
read
@ 2,2 say "请输入 b:" get b
read
if a>b
 max1=a
 min1=b
 @ 3,2 say ""
 ??"max=",max1,"min=",min1
else
 if a=b
  @ 3,2 say ""
  ??"a=b"
 else
  max1=b
  min1=a
  @ 3,2 say ""
  ??"max=",max1,"min=",min1
 endif
endif
 
修改后:
clear
a=0
b=0
@ 1,2 say "请输入 a:" get a
read
@ 2,2 say "请输入 b:" get b
read
@3,2 say ""
if a=b
 ??"a=b"
else
 if a>b
  max1=a
  min1=b
 else
  max1=b
  min1=a
 endif
 * ??"max=",max1,"min=",min1
 ??"max="+str(max1)+"min="+str(min1)
endif

posted @ 2005-05-19 14:03 Are you ready? 阅读(87) | 评论 (0)编辑 收藏
函数定义的语法如下:

FUNCTION  函数名
PARAMETERS  参数表
函数体
RETURN 返回值
ENDFUNC

example:

clear
strout()
function strout
?"Welcome to visual foxpro!"
return
endfunc
*没有参数时,“PARAMETERS  参数表”可以省略


clear
?addon(2,3)
function addon
parameters a,b
c=a+b
return c
endfunc  

过程的定义如下:
 PROCEDURE  过程名
 PARAMETERS 参数表
 过程程序主体
 ENDPROC

example:
clear
do stroutpro
procedure stroutpro
?"visual foxpro is useful"
endproc


clear
c=0
do addonpro with 4,3,c
?c
procedure addonpro
parameters a,b,d
d=a+b
endproc

*运行结果是7
*怎么会是7?难道VFP默认是按址传递参数的?
*这个问题到后面再解决!

**函数和过程的最大不同只在于:函数可以有返回值,过程没有返回值;另外它们的调用方式也有所不同!
posted @ 2005-05-19 10:34 Are you ready? 阅读(95) | 评论 (0)编辑 收藏
仅列出标题