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

文章作者 100test 发表时间 2007:03:10 17:27:53
来源 100Test.Com百考试题网


30.求素数
求素数表中1~1000之间的所有素数
*问题分析与算法设计
素数就是仅能衩1和它自身整除的整数。判定一个整数n是否为素数就是要判定整数n能否被除1和它自身之外的任意整数整除,若都不能整除,则n为素数。
程序设计时i可以从2开始,到该整数n的1/2为止,用i依次去除需要判定的整数,只要存在可以整除该数的情况,即可确定要判断的整数不是素数,否则是素数。
*程序与程序注释
#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("...........PRIME TABLE(%d--%d)............\n",n1,nm).
if(n1==1||n1==2) /*处理素数2*/
{
printf("M",2).
n1=3.count .
}
for(i=n1.i<=nm.i ) /*判定指定范围内的整数是否为素数*/
{
if(!(i%2))continue.
for(flag=1,j=3.flag&.&.j /*判定能否被从3到整数的一半中的某一数所整除*/
if(!(i%j))flag=0. /*若能整除则不是素数*/
if(flag) printf( count?"M":"M\n",i).
}
}
*运行结果
Input START and END=?1 1000


*思考题
请找出十个最小的连续自然数,它们个个都是合数(非素数)


相关文章


C趣味编程百例(09)歌德巴赫猜想
07年重庆职称计算机考试11月24日起报名
C趣味程序百例(09)求素数
计算机等级考试今天发榜
C趣味编程百例(08)求具有abcd=(ab cd)2性质的四位数
天津:2006年下半年NCRE考试查分热线开通
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛