C趣味程序百例(09)求素数

C趣味程序百例(09)求素数,第1张

C趣味程序百例(09)求素数,第2张

30.求质数
求质数表中1到1000之间的所有质数
*问题分析及算法设计
质数是只能被1及其本身整除的整数。判断一个整数n是否是素数,就是判断这个整数n是否能被除了1和它本身之外的任何整数整除。如果两个整数都不能被整除,那么n就是一个质数。
编程的时候我可以从整数n的2到1/2开始,可以用来依次去掉要判断的整数。只要有一个数可以整除的情况,就可以判定要判断的整数不是素数,否则就是素数。
*程序和程序注释
# include
void main()
{
int n1,nm,I,j,flag,count = 0;
do {
printf(" Input START and END =?);
scanf("%d%d ",&n1,& nm);/*输入素数的范围*/
}while(!(n1>0&&n1 printf("...........主表(%d - %d)............\n”,n1,nm);
if(n1==1||n1==2) /*进程素数2*/
{
printf("%4d ",2);
n1 = 3;count++;
}
for(I = n1;我{
如果(!(i%2))继续;
for(flag=1,j = 3;Flag&&j /*确定它是否能被一个从3到整数的一半的数*/
整除,如果(!(I % j))flag = 0;/*如果可除,就不是质数*/
If(flag)printf(++count % 15?" %4d":"%4d\n ",I);
}
}
*运行结果
输入开始和结束=?1 1000

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » C趣味程序百例(09)求素数

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情