教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 建筑文档 >

省考C语言程序设计题附答案[1]

来源:网络收集 时间:2026-07-14
导读: 1. 1.素数 [100,999]范围内同时满足以下两个条件的十进制数. ⑴其个位数 字与十位数字之和除以10所得的余数是百位数字;⑵该数是素数; 求有多少个这样的数? 15 #include int prime(int x) {int i,k; if(x k) return(1); else return(0); } main() for(i=10

1.

1.素数

[100,999]范围内同时满足以下两个条件的十进制数. ⑴其个位数

字与十位数字之和除以10所得的余数是百位数字;⑵该数是素数; 求有多少个这样的数? 15

#include int prime(int x) {int i,k; if(x<2) return(0); k=sqrt(x); for(i=2;i<=k;i++) if (x%i==0) break; if (i>k) return(1); else return(0); } main()

for(i=100;i<=999;i++) { int i,n=0,a,b,c; { a=i/100; b=i0/10; c=i;

if ((b+c)==a&&prime(i))

1

n++; }

printf(\} 2.

[300,800]范围内同时满足以下两个条件的十进制数. ⑴其个位数

字与十位数字之和除以10所得的余数是百位数字 ;⑵该数是素数;求满足上述条件的最大的三位十进制数。 3.

761

除1和它本身外,不能被其它整数整除的正整数称为素数(注:1

不是素数,2是素数)。若两素数之差为2 ,则称两素数为双胞胎数,问[31,601]之间有多少对双胞胎数。 #include int prime(int x) {int i,k; if(x<2) return(0); k=sqrt(x); for(i=2;i<=k;i++) if (x%i==0) break; if (i>k) return(1); else return(0); } main()

2

22

{ int i,n=0;

for(i=31;i<=599;i++)

if (prime(i)&&prime(i+2)) n++; printf(\} 4.

数学家哥德巴赫曾猜测:任何大于6的偶数都可以分解成两个素数

(素数对)的和。但有些偶数可以分解成多种素数对的和,如: 10=3+7,10=5+5,即10可以分解成两种不同的素数对。试求6744可以分解成多少种不同的素数对(注: A+B与B+A认为是相同素数对) #include int prime(int x) {int i,k; if(x<2) return(0); k=sqrt(x); for(i=2;i<=k;i++) if (x%i==0) break; if (i>k) return(1); else return(0); } main() { int i,n;

3

144

n=0;

for(i=31;i<=599;i++)

if (prime(i)&&prime(i+2)) n++; printf(\} 5.

两个素数之差为2,则称这两个素数为双胞胎数。求出[200,1000]

1764

之间的最大一对双胞胎数的和。 6.

一个素数(设为p)依次从最高位去掉一位,二位,三位,……,

若得到的各数仍都是素数(注:除1和它本身外,不能被其它整数整除的正整数称为素数,1不是素数,2是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数的个数。 39 7.

德国数学家哥德巴赫曾猜测:任何大于6的偶数都可以分解成两个

素数(素数对)的和。但有些偶数可以分解成多种素数对的和,如: 10=3+7,10=5+5,即10可以分解成两种不同的素数对。试求1234可以分解成多少种不同的素数对(注: A+B与B+A认为是相同素数对)

25

8.求[100,900]之间相差为12的素数对(注:要求素数对的两个素数均在该范围内)的个数。 #include int prime(int x) {int i,k;

4

50

if(x<2) return(0); k=sqrt(x); for(i=2;i<=k;i++) if (x%i==0) break; if (i>k) return(1); else return(0); } main() { int i,n=0;

for(i=100;i<=900-12;i++) if (prime(i)&&prime(i+12)) n++; printf(\} 9.

一个素数(设为p)依次从最高位去掉一位,二位,三位,……,

若得到的各数仍都是素数(注:1不是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,但尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数的和。

21645

#include int prime(int x)

5

for(b=c+1;b<=100;b++) for(a=b+1;a<=100;a++) { i=a+b+c;

if (i>100&&i<150&&(1.0/(a*a)+1.0/(b*b)==1.0/(c*c))) { n++;

printf(\ } }

printf(\}

36. 倒勾股数是满足公式: 1/A^2+1/B^2=1/C^2 的一组正整数(A,B,C),例如,(156,65,60)是倒勾股数,因为:1/156^2+1/65^2=1/60^2。假定A>B>C,求A,B,C之和小于100的倒勾股数有多少组? 2 37. 勾股弦数是满足公式: A^2+B^2=C^2 (假定A

11

38. 倒勾股数是满足公式: 1/A^2+1/B^2=1/C^2 的一组正整数(A,B,C),例如,(156,65,60)是倒勾股数,因为:1/156^2+1/65^2=1/60^2。假定A>B>C,求A,B,C均小于或等于100的倒勾股数有多少组?

4

39. 勾股弦数是满足公式: A^2+B^2=C^2 (假定A

16

{int max=0,a,b,c; for(a=1;a<=100;a++) for(b=a+1;b<=100;b++) for(c=b+1;c<=100;c++) { if (a*a+b*b==c*c)

{ if (max

printf(\ }

}

printf(\}

40 若某整数平方等于某两个正整数平方之和的正整数称为弦数。例如:由于3^2+4^2=5^2,则5为弦数,求[100,200]之间弦数的个数。

55

#include main() {int i,j,k,n=0,m; for(k=100;k<=200;k++) { m=1;

for(i=1;i

17

41 若某正整数平方等于某两个正整数平方之和,称该正整数为弦数。例如:由于3^2+4^2=5^2,则5为弦数,求[131,200]之间最小的弦数。

135

#include main()

{int i,j,k,min=200; for(k=131;k<=200;k++) for(j=1;j

{if (min>k) min=k;break;} printf(\}

5.完数因子

42 求在[10,1000]之间的所有完数之和。各真因子之和(不包括自身)等于其本身的正整数称为完数。例如:6=1+2+3,6是完数。 524 #include int wan(int x) {int i,s=1; for(i=2;i<=x-1;i++) if (x%i==0) s=s+i; if (s==x) return(1); else return(0);

18

} main() { int i,s=0;

for(i=10;i<=1000;i++) if (wan(i)) s=s+i; printf(\}

43 一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。例如, 6的真因子为1,2,3,而6=1+2+3,因此,6是“完数”。求[1,1000]之间的最大完数。 #include int wan(int x) {int i,s=1; for(i=2;i<=x-1;i++) if (x%i==0) s=s+i; if (s==x) return(1); else return(0); } main() { int i;

for(i=1000;i>=1;i--) if (wan(i)) break; printf(\

19

496

}

44 一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。 …… 此处隐藏:3498字,全部文档内容请下载后查看。喜欢就下载吧 ……

省考C语言程序设计题附答案[1].doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/682090.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)