vfp典型程序设计题(附参考答案)

  • 格式:doc
  • 大小:89.00 KB
  • 文档页数:9

典型程序设计题(附参考答案)1.求1到2000之间,能被3或7整除,并且含有数字5的整数的个数、它们的和、它们的平方根的和(保留2位小数)、以及它们的平方和。

2.求能被3整除且至少有一位数字为5的三位数的个数。

3.求出只要能被2,7,9之一整除的800以内的正整数的个数。

4.求[105,625]间能同时被7和11整除的自然数之和。

求[200,600]间奇数之和。

5.编程序求出1000到2000之间同时满足除3余2和除5余3条件的数的个数。

6.输出[10,100]中除以17的余数和除以5的商相等的整数的个数。

7.统计区间[1000,9999]内所有能被3整除,且千位数字与个位数字之和为8的整数的个数。

8.求在四位数的奇数中,所有各位数字之和是25的倍数的数的和。

9.求出所有能被17整除且不含重复数字的三位数的和。

10.求1到500的偶数立方和与奇数立方和之差。

11.求3+9+27+81+243+...这样的数之和. 若累加数大于500时,则结束累加.12.求1+3+5+7+9+11+...这样的奇数之和.若累加数大于500时, 则结束累加。

13.计算S=1*5*9*13*...*k,直到累乘数k>=25中止。

14.求出1到5000之间的能被5整除的前若干个偶数之和,当和大于500时程序退出。

15.编写程序,s=1+1/2+1/3+…+1/99,保留两位小数。

16.编程求S=1*3+2*4+3*5+...+198*200。

17.设S=1+1/2+1/3+...+1/N,N为正整数。

编程求使S不超过10的最大的N18.求S=8!+9!+10!19.编写程序,求10!20.计算S=3!+5!+7!+...+N!,求直到S>=680000为止的奇数N。

21.s=1!+2!+3!+....+n! 当s大于61000时结束累加,求n。

22.数列xi各元素的值是:x1=1,x2=1+2,x3=1+2+3,.....xn=1+2+3+......+n。

对数列求和:S=x1+x2+x3....,直到S>3000止,求此时数列中最大的元素值。

23.已知S1=1,S2=1+2,S3=1+2+3,…,SN=1+2+…+N,求S20到S80有多少数能被17或35整除。

24.求在1,2,3,4,...,10这10个数中,任意选两个不同的数,求它们的和能被2整除的数的总对数。

(注意: 象3+5和5+3认为是同一对数)25.已知一个数列的前三个数是1,2,3,从第四个数起,每个数都是前三个数之和。

求出该数列的第15个数。

26.编写程序,求200到800之间素数的个数。

27.编写程序,求600到900之间素数的和。

28.所谓回文数是从左至右或从右至左读起来都是一样的数字,如:121是一个回文数。

编写程序,求在100—900的范围内所有能被3整除的回文数的和。

29.编写程序,计算在0至50的范围内有多少个数,其每位数的乘积大于每位数的和。

30.把18元钱分成一元、二元和五元的纸币且纸币数共为10张的分法有多少种?(注:在兑换中一元、二元、五元的纸币数可以为0)。

31.编写程序,求共有几组I、j、k符合算式ijk+kji=1333,其中I、j、k是0~9之间的一位整数。

32.一个数如果刚好与小于它的所有因子之和相等,则称该数为一个“完数”,如:6=1+2+3,则6就是一个完数。

求出10000以内的完数的个数及它们的和。

33.已知a>b>c,且a+b+c<50,求满足条件1/(a^2)+1/(b^2)=1/(c^2)的共有多少组。

典型程序设计题参考答案1.求1到2000之间,能被3或7整除,并且含有数字5的整数的个数、它们的和、它们的平方根的和(保留2位小数)、以及它们的平方和。

clearstore 0 to n,s1,s2,s3for i=1 to 2000if (mod(i,3)=0 or i%7=0) and ‘5’$str(i)n=n+1s1=s1+is2=s2+sqrt(i)s3=s3+i^2endifnext“个数:”,n,”和:”,s1,”平方根和:”,s2,”平方和:”,s3return2.求能被3整除且至少有一位数字为5的三位数的个数。

clearn=0for i=100 to 999if i%3=0 and '5'$str(i)n=n+1endifnextnreturn3.求出只要能被2,7,9之一整除的800以内的正整数的个数。

clearn=0for i=1 to 800if i%3=0 or i%7=0 or i%9=0n=n+1endifnextnreturn4.求[105,625]间能同时被7和11整除的自然数之和。

求[200,600]间奇数之和。

clears=0for i=105 to 625if i%7=0 and i%11=0s=s+iendifnextsreturn5.编程序求出1000到2000之间同时满足除3余2和除5余3条件的数的个数。

clearn=0for i=1000 to 2000if i%3=2 and i%5=3n=n+1endifnext“个数:”, nreturn6.输出[10,100]中除以17的余数和除以5的商相等的整数的个数。

clearn=0for i=10 to 100if i%17=int(i/5)n=n+1endifnext“个数:”, nreturn7.统计区间[1000,9999]内所有能被3整除,且千位数字与个位数字之和为8的整数的个数。

clearn=0for i=1000 to 9999gw=i%10qw=int(i/1000)if i%3=0 and gw+qw=8n=n+1endifnext“个数:”, nreturn8.求在四位数的奇数中,所有各位数字之和是25的倍数的数的和。

clears=0for i=1000 to 9999gw=i%10sw=int(i/10)%10bw=int(i/100)%10qw=int(i/1000)if i%2<>0 and (gw+sw+bw+qw)%25=0s=s+iendifnext“和:”, nreturn9.求出所有能被17整除且不含重复数字的三位数的和。

clears=0for i=100 to 999gw=i%10sw=int(i/10)%10bw=int(i/100)if i%17=0 and gw<>sw and sw<>bw and bw<>gws=s+iendifnext“和:”, nreturn ————————————————————————————————————10.求1到500的偶数立方和与奇数立方和之差。

clears1=0s2=0for i=1 to 500if i%2=0s1=s1+i^3elses2=s2+i^3endifnext“偶数立方和与奇数立方和之差为:”, s1-s2return ————————————————————————————————————11.求3+9+27+81+243+...这样的数之和. 若累加数大于500时,则结束累加. clears=0n=1do while .t.s=s+3^nif s>500exitendifn=n+1enddosreturn12.求1+3+5+7+9+11+...这样的奇数之和.若累加数大于500时, 则结束累加。

13.计算S=1*5*9*13*...*k,直到累乘数k>=25中止。

clears=1n=1do while .t.s=s*nif n>=25exitendifn=n+4enddosreturn14.求出1到5000之间的能被5整除的前若干个偶数之和,当和大于500时程序退出。

————————————————————————————————————15.编写程序,s=1+1/2+1/3+…+1/99,保留两位小数。

clears=0for n=1 to 99s=s+1/nnextsreturn16.编程求S=1*3+2*4+3*5+...+198*200。

clears=0for n=1 to 198s=s+n*(n+2)nextsreturn17.设S=1+1/2+1/3+...+1/N,N为正整数。

编程求使S不超过10的最大的N clears=0n=0do while .t.n=n+1s=s+1/nif s>10exitendifenddon-1return18.求S=8!+9!+10!clears=0for x=8 to 10t=1for y=1 to xt=t*ynexts=s+tnextsreturn19.编写程序,求10!20.计算S=3!+5!+7!+...+N!,求直到S>=680000为止的奇数N。

clears=0n=3do while .t.t=1m=1do while m<nt=t*mm=m+1enddos=s+tif s>=680000exitendifn=n+2enddonreturn21.s=1!+2!+3!+....+n! 当s大于61000时结束累加,求n。

22.数列xi各元素的值是:x1=1,x2=1+2,x3=1+2+3,.....xn=1+2+3+......+n。

对数列求和:S=x1+x2+x3....,直到S>3000止,求此时数列中最大的元素值。

clears=0n=1do while .t.x=0m=1do while m<nx=x+mm=m+1enddos=s+xif s>=3000exitendifn=n+1enddoxreturn ————————————————————————————————————23.已知S1=1,S2=1+2,S3=1+2+3,…,SN=1+2+…+N,求S20到S80有多少数能被17或35整除。

clearn=0for x=20 to 80s=0for y=1 to xs=s+ynextif s%17=0 or s%35=0n=n+1endifnextnreturn ————————————————————————————————————24.求在1,2,3,4,...,10这10个数中,任意选两个不同的数,求它们的和能被2整除的数的总对数。

(注意: 象3+5和5+3认为是同一对数)clearn=0for x=1 to 10for y=1 to x-1if (x+y)%2=0n=n+1endifnextnextnreturn ————————————————————————————————————25.已知一个数列的前三个数是1,2,3,从第四个数起,每个数都是前三个数之和。