欢迎来到天天文库
浏览记录
ID:56721334
大小:38.00 KB
页数:26页
时间:2020-07-06
《vfp 程序设计复习题.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、vfp程序设计复习题Vf程序综合总复习1判断400-4000年中,有几个闰年?程序如下:settalkoffClearN=0FORY=400TO4000Ifmod(y,4)=0andmod(y,100)!=0ormod(y,400)=0N=N+1Endif?N2求1~100之间全部奇数的平方根之和程序如下:settalkoffX=1Y=0DOWHILEX<100Y=Y+sqrt(x)X=X+2Enddo?y3求100的阶乘程序如下:X=1FORN=1TO100X=X*NENDFOR?X4求S=1+2!+3!+
2、4!+……….+100!程序如下:S=0R=1FORN=1TO100R=R*NS=S+RENDFOR?S5所谓水仙花数是指一个三位数,其各位数字的立方和等于该数本身(如153=1^3+5^3+3^3),求所有的水仙花数的和。程序如下:settalkoffS=0Form=100to999A=int(m/100)B=int((m-a*100)/10)C=m-a*100-b*10Ifm=a^3+b^3+c^3S=s+mEndifEndfor?s6一个三位数,不能被3整除且至少有一位数为5的数的个数,答案:167程序
3、如下:SETTALKOFFS=0FORX=100TO999A=INT(X/100)B=INT((X-A*100)/10)C=X-A*100-B*10IFMOD(X,3)!=0and(A=5ORB=5ORC=5)S=S+1ENDIFX=X+1ENDFOR?S7试求S=1+1/1!+1/2!+1/3!+……..+1/100!求S的值程序如下:S=1T=1FORK=1TO100T=T*KS=S+1/TENDFOR?S8所有数字和为13的四位数的个数。程序如下:(405)T=0FORK=1000TO9999A=INT
4、(K/1000)B=INT((K-A*1000)/100)C=INT((K-A*1000-B*100)/10)D=K-A*1000-B*100-C*10IFA+B+C+D=13T=T+1ENDIFENDFOR?T9已知F数列定义如下:F(1)=1,F(N+2)=F(N+1)+F(N),设计程序求F数列的第50项与前50项之和程序如下:DIMEF(50)F(1)=1F(2)=1S=2FORK=3TO50F(K)=F(K-1)+F(K-2)S=S+F(K)ENDFOR?F(50)?S10、一个数如果刚好与它所有的
5、因子之和相等,则称该数为一个“完数”,求出1到1000之间所有的完数之和。(530)settalkoffs=0forn=1to1000k=0forj=1ton-1ifint(n/j)=n/jk=k+jendifnextifn=ks=s+nendifnext?s11、所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121。编写程序,求出100-900之间的所有回文数的个数。Answer:8n=0fori=100to900a=int(i/100)b=int((i-a*100)/10)c=i-a*100-b
6、*10ifa=cn=n+1endifendfor?n12、所谓素数是指这样的自然数,除1和它本身外不再有其它因子。编写程序,计算从1981年开始到3000年为止,我们将遇到多少个素数年号。Answer:13s=0fori=1981to3000f=.t.forj=2toi-1ifmod(I,j)=0f=.f.exitendifendforiff=.t.s=s+iendifendfor?s13、编写程序,求在10-1000之间所有能被4除余3的数的奇数的和答案:s=0fori=11to1000step2ifmod
7、(i,4)=3s=s+iendifendfor?s14、百钱百鸡问题。用100钱买50只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡一钱一只,编写程序计算共有几种买法(要求每种鸡至少要买一只)。(a,b,c分别是公鸡,母鸡,小鸡的只数)答案:12种n=0fora=1to19forb=1to50-aforc=1to50-a-bifa*5+b*3+c=100anda+b+c=50n=n+1endifendforendforendfor?n15编写程序,求共有几组I、J、K、符合算式IJK+KJI=1333,其中I、J、K
8、是0-9之间的一位整数。answer:6n=0fori=0to9forj=0to9fork=0to9ifi*100+j*10+k+k*100+j*10+i=1333n=n+1endifendforendforendfor?n16编写程序,求所有符合算式IJ*JI=1300的最大数IJ(即I*10+J),其中I、J是0-9之间的一位整数。answer:52forJ=1to9forI=1toJif(i*
此文档下载收益归作者所有