STORE ‘VFP程序设计’ TO c,cc ????????????第一行 P=SPACE(0) ????????????第二行 DO WHILE LEN(c)>0 ????????????第三行 X=ASC(LEFT(c,1)) ????????????第四行 IF X>127 ????????????第五行 i=2 ????????????第六行 ELSE ????????????第七行 i=1 ????????????第八行 ENDIF ????????????第九行 P=LEFT(c,i)+P c=SUBSTR(c,i+1) ENDDO
?cc+“的反序为”+P
17.完善下列程序,使其能在屏幕上输出一个如下所示的图形。
********* ******* ***** *** *
CLEAR
FOR i=1 TO 5 ??SPACE(i-1)
FOR j= TO 11-2*i
???*? ENDFOR ?
ENDFOR
18.运行下面程序段后,屏幕显示的运行结果是 。 SET TALK OFF DIMENSION A(6) FOR K=1 TO 6 A(K)=20-2*K ENDFOR K=5 DO WHILE K>=1 K=K-1 ENDDO ?A(1),A(3),A(5)
19.设n=234,m=432,k=\,表达式l+&k的值是_ __ 。
20.下列程序的功能是:求1~100之间非3的倍数的所有奇数之和,完善下列程序。 S=0
FOR i=1 to 100 STEP 2 IF MOD(i,3)=0
ENDIF S=S+i ENDFOR
第 9 页 共 50 页
21.在VFP命令窗口中执行?ATC(“学习”, “学习计算机”)命令后,返回的结果是 。 22.将第2~4个字符为“yan”的所有内存变量保存到mVar内存变量文件中,可以使用命令:
SAVE TO mVar ALL ?yan* 23.在VFP中可以使用 语句跳出SCAN ? ENDSCAN循环体外执行ENDSCAN后面的语句。 24.完善下列程序。使其实现计算数列1!/2!,2!/3!,3!/4!,…的前20项之和的功能。
nSum=0
FOR n=1 TO 20
nSum= ENDFOR
FUNCTION jc
PARAMETER x s=1
FOR m=1 TO x
s=s*m ENDFOR RETURN s
25.在Visual FoxPro系统中,逻辑运算符执行的优先顺序是 。 26.LEFT(“123456789”,LEN(“数据库”))的计算结果是 。 27.表达式Substr(\的运算结果是 。 28.执行下面命令后,屏幕上显示的结果是 。 X= “ARE YOU OK?” Y= “are” ?AT(Y,X)
29.完善下列程序,其功能为:随机产生一个要求在70~80之间的数。 X=0
DO WHILE X=rand( )*100
IF X>70 AND X<80 ENDIF ENDDO ?X
30.下列程序的功能是计算:
n=1/(1*2)+1/(3*4)+1/(5*6)+…+1/(n*(n+1))+…的近似值,当1/(n*(n+1))的值小于0.00001时,停止计算。 s=0 i=1
DO WHILE .T.
p= s=s+1/p
IF 1/p<0.00001
ENDIF i=i+2 ENDDO
31.利用一条 命令(语句)可以给多个内存变量赋同一个值。 32.说明公共变量的命令关键字是 。
33.完善下列程序,使其产生15个随机的大写英文字母:
第 10 页 共 50 页
CLEAR I=1 DO WHILE I<=15 k=INT(RAND()*100) IF &&k的值为某写英文字母 ? CHR(k) ENDIF ENDDO
34.完善下列程序,其功能为:将由ASCII码字符组成的字符串进行反序显示(即字符串’ABCD’显示为’DCBA’)。
store ?abcdef? to c,cc p= do while len(c)>0 p=left(c,1)+p c=substr(c,2) enddo
?cc+’的反序为’+p 35.LEFT(“123456789”,LEN(“数据库”))的计算结果是 。 36. 完善下列程序。使其实现计算数列1!/2!,2!/3!,3!/4!,…的前10项之和的功能。
nSum=0
FOR n=1 TO 10
nSum= ENDFOR
FUNCTION jc
PARAMETER x s=1
FOR m=1
s=s*m ENDFOR RETURN s
37.运行下列程序后,显示结果为 。
CLEAR
c=”南京大学信息管理系” FOR n=1 TO LEN(c)/2
IF n%2<>0
??SUBSTR(C, 2*n-1, 2) ENDIF ENDFOR
38. 下列的程序用一条命令可表示为 。 if x>0 y=1 else
if x=0 y=0 else
y= -1 endif endif
第 11 页 共 50 页
39.完善下列自定义函数STR_RV(),要求其功能为将一个字符串进行“反序”。例如,STR_RV(“ABCD”)的返回值为“DCBA”。 FUNCTION str_rv
PARAMETERS c p=SPACE(0)
DO WHILE LEN(c)>0
x=ASC( ) IF x>127
p=LEFT(c,2)+p c=SUBSTR(c,3) ELSE
p=LEFT(c,1)+p
c=SUBSTR( ) ENDIF ENDDO RETURN P ENDFUNCTION
40.执行命令A=2005/4/2之后,内存变量A的数据类型是 型。 41.如下程序显示的结果是 。
s=1 i=0
do while i<8 s=s+i i=i+2 enddo ?s
42.表示“1962年10月27日”的日期常量应改写为 。 43.执行下面的程序代码:
SET UDFPARMS TO VALUE STORE 6 TO a ?plu(a) ?a
FUNCTION plu PARAMETERS b b=b+2 Return b
则执行语句?plu(a)将显示 ,执行语句?a将显示 。 44.运行下面的程序后,屏幕上显示的运行结果是: 。 SET TALK OFF STORE ?XM? TO NAME XM= ?宿迁学院三系? RESULT=LEN(&NAME-?三系?) ?RESULT
45.已知N=\则表达式X&M&N的值为 。
44.在某个VFP程序中,用DIMENSION命令定义了一个二维数组并为其赋值,具体命令语句如下:
第 12 页 共 50 页
DIMENSION a[3,4]
a=5
则该二维数组含有 个数组元素,其中数组元素a[2,3]的值是 。 45.执行下面程序: SET TALK OFF STORE 1 TO N,S DO WHILE .T. S=S*N N=N+1 IF N>5 EXIT ENDIF ENDDO ?S 当程序运行结束时,S的值是 。
46.下面的自定义函数CountHZ()的功能是:当传递一个字符型参数时,返回这个字符串中汉字的个数。例如,执行命令?CountHZ(?北京奥运2008?),屏幕上显示的是4。请完善代码:
FUNCTION CountHZ
PARAMETERS cHZ nSUM=0 I=1
DO WHILE I IF ASC(SUBSTR(cHZ,I,1))>127 I=I+2 I=I+1 ELSE ENDIF RETURN nSUM ENDFUNC 47. 定义变量y=5,则函数IFF(y>=5,”1”,”2”)的返回值是___ ____。 48.完善下列程序段,其功能是将由中英文字符组成的字符串,以竖列的形式(即每行一个字符)输出。 CLEAR P=”新编VisualFoxPro教程” DO WHILE !EMPTY(p) i=IIF(ASC(LEFT(p,1))>127,2,1) ?LEFT(p,i) p=SUBSTR(p, ) ENDDO 49. 函数ABS(20-50)的返回值是 , 函数BETWEEN(?a?,?A?,?P?)的返回值是__ _____。 50.设x=0,y=1,x1=”BC\。表达式:(x+y)/2=0.5 .AND. (y-x)*2>2 .OR. .NOT.y1的值为_ _。 51. 完善下列程序,其功能是计算级数s=1+1/2+1/3+1/4+?+1/i+?,使s的值最接近于2.0且不大于2.0,并输出项数及s的值。 第 13 页 共 50 页