VFP程序设计.doc_第1页
VFP程序设计.doc_第2页
VFP程序设计.doc_第3页
VFP程序设计.doc_第4页
VFP程序设计.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

。第六章 程序设计1717。程序设计1*-从键盘输入三角形的边长,输入边长满足两边之和大于第三边,且为正值。计算并输出三角形的面积S;若不满足以上条件,显示输出不能构成三角形。其中面积公式请参看(图1)。将面积值存入变量AREA中。请按照题目要求,在下面编写程序代码。 *-INPUT TO AINPUT TO BINPUT TO C? 三角形面积为,FUN(A,B,C)RETURNFUNCTION FUN(a,b,c)AREA=-1*Program* End *RETURN AREA程序设计2*-从键盘任意输入的三个数按从大到小排序。排序后存入变量A,B,C中请按照题目要求,在下面编写程序代码。 *-A=-1B=-1C=-1input x= to xinput y= to yinput z= to zFUN(X,Y,Z)RETURNFUNCTION FUN(X,Y,Z)*Program* End *RETURNDO YZJ10 WITH OUT程序设计3*-从键盘输入一个数,如果该数字大于0,通过子程序输出该数字作为半径的圆面积;如果该数字小于等于0,则输出不能作为圆的半径。(PI=3.14)将结果存入变量OUT中,请按照题目要求,在下面编写程序代码。 *-INPUT TO A?FUN(A)FUNCTION FUN(R)OUT=-1*Program* End *RETURN OUT程序设计4*-从键盘输入3个数,然后找出其中最大值和最小值。最大值存入中,最小值存入中。本题使用IF.EndIf 语句完成。*-INPUT 请输入一个数: TO AINPUT 请输入一个数: TO BINPUT 请输入一个数: TO CMa=-1Mi=-1FUN(A,B,C)?MA,MIFUNC FUN(A,B,C)*Program* End *RETURN程序设计5*-计算下列分段函数:如下图当输入任意X值时,显示输出Y值,要求用Do Case语句实现。*-INPUT TO X?FUN(X)RETURNFUNCTION FUN(X)Y=-1*Program* End *RETURN Y程序设计6*-判断一个三位数是否为水仙花数,并输出判断结果,是为1,否为0。所谓水仙花数是指一个3位数,其各位数字立方和等于该数本身。将结果存入变量OUT中。*-OUT=-1n=153*Program* End *程序设计7*-编程求对某一正数的值保留2位小数,并对第三位进行四舍五入。将结果存入变量OUT中。*-h=234.5367OUT=-1*Program* End *程序设计8*-编程求对某一正数的值保留3位小数,并对第4位进行四舍五入。将结果存入变量OUT中。*-h=234.5367OUT=-1*Program* End *11程序设计9*-输出10到50之间所有能被7整除的数。(用do while enddo语句实现)并将这些数的和存入所给变量OUT中。请按照题目要求,在下面编写程序代码。 *-OUT=-1*Program* End *DO YZJ4 WITH OUT程序设计10*-求1-200间的所有偶数的和,结果输入变量OUT中,要求用For循环语句实现。*-OUT=-1*Program* End *程序设计11*-编程求P=1+1/(2x2)+1/(3x3)+ 1/(10x10)。将结果存入变量OUT中,要求用Do While语句实现。*-OUT=-1*Program*P=0M=1DO WHILE M=10P=P+1/(M*M)M=M+1ENDDO? P=,POUT=P* End *程序设计12*-编程计算如下表达式的值:y=1-1/31/5-1/71/9,要求使用for.endfor语句来完成。将结果存入变量OUT中。OUT=-1*-*Program*s=1for i=1 to 4s=s+(-1)i/(2*i+1)endforout=s? out* End *程序设计13*-编程计算如下表达式的值:y=1-1/2+1/4-1/6+1/8-1/10,要求使用for.endfor语句来完成。将结果存入变量OUT中。*-OUT=-1*Program*s=1for i=1 to 5s=s+(-1)i/(2*i)endforout=s? out* End *程序设计14*-编程求P=1-1/(22)+1/(33)-1/(44)+1/(55)。将结果存入变量OUT中,要求用Do While语句实现。*-OUT=-1*Program*P=0M=1I=0DO WHILE M=5P=P+(-1)(M+1)/(M*M)M=M+1ENDDO? P=,POUT=P* End *程序设计15*-从键盘输入一个整数,输出所有能整除该数,并且本身也能被3整除的数的和。(例如:输入6,则输出3,6)结果存于变量x中,要求用For循环语句实现。*-INPUT TO N?FUN(N)FUNCTI FUN(A)X=0*Program*FOR N=1 TO A IF A%N=0.AND.N%3=0 ? N x=x+N ENDIFENDFOR* End *RETURN X程序设计16*-编程求出1*1+2*2+.+n*n=1000中满足条件的最大的n,将结果存入变量OUT中。要求用Do While语句实现。 *-OUT=-1*Program*s=0n=1do while s0 d=n%10 s=s*d n=int(n/10)enddoout=s? out* End *程序设计25*-编程计算正整数num的各位上的数字之和。将结果存入变量OUT中,要求用Do While语句实现。*-?输入正整数num=434num=434OUT=-1*Program*s=0do while num0 s=s+num%10 num=int(num/10)enddout=s? out* End *程序设计26*-编程计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20。将结果存入变量OUT中,要求用Do While语句实现。*-num=434OUT=-1*Program*s=1do while num0 s=s*(num%10) num=int(num/10)enddout=s? out* End *程序设计27*-编程判断一个整数w的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。将结果存入变量OUT中,要求用Do While语句实现。*-OUT=-1w=39*Program*s=0 do while w0 s=s+(w%10)*(w%10) w=int(w/10) enddo if s%5=0 out=1 else out=0endif ? out* End *DO YZJ WITH OUT程序设计28*-输入一个三位数,将个、十、百位顺序拆开分别存入变量S中,用加号分隔。如输入345分开后为3+4+5,要求用Do While语句实现。 *-?FUN(345)RETURNFUNC FUN(N)S=*Program*do while n0 a=n%10 S=+STR(INT(A),1)+S n= n-a n=n/10enddoS=SUBS(S,2,LEN(S)* End *RETURN S11程序设计29*-输出下面图形:(要求使用For语句,利用双重循环语句) * * * * * * * * * *请按照题目要求,在下面编写程序代码。要求:将输出第三行的所有字符存入变量S中。*-S=*Program*for i=1 to 4for j=1 to i?*endfor ?endfor* End *DO YZJ6 WITH S程序设计30*-利用循环程序输出图形: 1 222 33333 4444444并将输出第三行存入变量S中,请按照题目要求,在下面编写程序代码。 *-S=*Program*N=1FOR N=1 TO 4? SPACE(4-N)FOR M=1 TO 2*N-1? STR(N,1)ENDFORENDFOR SET TALK ONS=33333* End *DO YZJ13 WITH S程序设计31*-利用循环程序输出图形: 4 333 22222 1111111并将最后一行存入变量S中,请按照题目要求,在下面编写程序代码。 *-S=*Program*FOR N=1 TO 4? SPACE(4-N)FOR M=1 TO 2*N-1? STR(4-N+1,1)ENDFORENDFORS=1111111* End *DO YZJ15 WITH S11程序设计32*-计算并在屏幕上显示乘法表。显示格式如下: 11= 1 12= 2 22= 4 13= 3 23= 6 33=9 . 19= 9 29= 18 .99=81将各部分结果相加(1+2+4+.+81)存入变量Z中,程序要求用Do While语句实现。*-Z=0*Program*X=1?DO WHILE X=9 Y=1 DO WHILE Ysn=n+1endifendfout=n? out* End *程序设计39*-编程求一批数中最大值和最小值的差。将结果存入变量OUT中。*-dime array(10)array(1)=10array(2)=3array(3)=6array(4)=96array(5)=4array(6)=23array(7)=35array(8)=67array(9)=12array(10)=88OUT=-1*Program*store array(1) to max,minfor i=1 to 10if array(i)max max=array(i)endifif array(i)max max=array(i)endifif array(i)max max=array(i)endifif array(i)min min=array(i)endifendfout=max*min? out* End *程序设计42*-编程找出一批正整数中最大的偶数。结果存入变量OUT中。*-dime array(10)array(1)=1array(2)=3array(3)=6array(4)=96array(5)=4array(6)=23array(7)=35array(8)=67array(9)=12array(10)=88OUT=-1*Program*max=array(1)for i=1 to 10 if array(i)%2=0 if maxarray(i) min=array(i) endif endifendfout=min ? out* End *程序设计44*-编程找出一批正整数中的最小的奇数。将结果存入变量OUT中。请按照题目要求,用For循环语句在下面编写程序代码。 *-dime array(10)array(1)=1array(2)=3array(3)=6array(4)=96array(5)=4array(6)=23array(7)=35array(8)=67array(9)=12array(10)=88OUT=-1*Program*min=array(1)for i=1 to 10 if array(i)%20 if minarray(i) min=array(i) endif endifendfout=min ? out* End *程序设计45*-编程找出一批正整数中的最大的奇数。将结果存入变量OUT中。*-dime array(10)array(1)=1array(2)=3array(3)=6array(4)=96array(5)=4array(6)=23array(7)=35array(8)=67array(9)=12array(10)=88OUT=-1*Program*max=array(1)for i=1 to 10 if array(i)%20 if maxarray(i) max=array(i) endif endifendfout=max ? out* End *程序设计46*-编程当n=10时,计算如下表达式a10的值。a1=1,a2=1/(1+a1),a3=1/(1+a2),.an=1/(1+a(n-1)。将结果存入变量OUT中,要求用For循环语句实现。*-OUT=-1*Program*a=1for i=1 to 9a=1.0/(1+a)endforout=a? out* End *程序设计47*-编程已知下列各项:a1=1,a2=1/(1+a1),a3=1/(1+a2),.an=1/(1+a(n-1)。当n=10时,计算s=a1-a2+a3-a4.-a10表达式的值,将结果存入变量OUT中。 *-OUT=-1*Program*a=1s=1for i=1 to 9a=1.0/(1+a)s=s+a*(-1)iendforout=s? out* End *程序设计48*-在屏幕上纵向输出计算机等级考试。(要求用Do While 语句实现)并将第五行的字符输出到给定变量Y中。请按照题目要求,在下面编写程序代码。 *-Y=*Program*i=10S=0do while i=50 if i%7=0 ?i S=S+I endif i=i+1enddoOut=S* End *DO YZJ5 WITH Y11程序设计49*-从键盘输入一个汉字字符串,送入变量S中,将它逆向存入变量Y中,如:输入计算机考试,输出为试考机算计,要求用For循环实现。请按照题目要求,在下面编写程序代码。*-A=计算机考试?FUN(A)FUNCTIO FUN(S)Y=*Program*FOR N=1 TO LEN(S)-1 STEP 2Y=Y+SUBS(S,LEN(S)-N,2)ENDFOR* End *RETURN Y程序设计50*-过滤已存在字符串变量STR中的内容,只保留串中的字母字符,并统计新生成串中包含的字母个数。将生成的结果字符串存入变量OUT中。*-OUT=str=ab23 %(u)*Program*N=LEN(STR)L=0S=FOR I=1 TO NIF SUBSTR(STR,I,1)=A OR SUBSTR(STR,I,1)=a l=l+1s=s+SUBSTR(STR,I,1)endifendfor? s=,sout=s* End *程序设计51*-编程将一个由四个数字组成的字符串转换为每两个数字间有一个空格的形式输出。例如输入4567,应输出4567(表示空格),将结果存入变量OUT中,要求用For循环语句实现。*-str=4567OUT=*Program*spc=space(1)s=for i=1 to len(str)-1s=s+subs(str,i,1)+spcendfs=s+subs(str,i,1)out=s? out,len(out)* End *程序设计52*-编程将一个由四个数字组成的字符串转换为每两个数字间有一个字符“*”的形式输出。例如输入4567,应输出4*5*6*7。将结果存入变量OUT中。*-str=4567OUT=*Program*spc=*s=for i=1 to len(str)-1s=s+subs(str,i,1)+spcendfs=s+subs(str,i,1)out=s? out,len(out)* End *程序设计53*-设表RSDA.DBF结构为:学号(C,5),姓名(C,6), 职称(C,6)统计出RSDA.DBF表中职称为工程师的人数。(利用DO WHILEENDDO循环语句实现)。将人数存入变量Y中,请按照题目要求,在下面编写程序代码。 *-Y=-1*Program*use rsdastore 0 to slocate for 职称=工程师do while not eof()s=s+1continueenddo?共有工程师+str(s,3)+名useY=S* End *DO YZJ9 WITH Y程序设计54*-编程统计一个长度为2的字符串在另一个字符串中出现

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论