南京条约记录片:判断101-200之间有多少个素数,并输出所有素数

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/01 10:50:31
老题目新学生,看不懂,请教

#include "math.h"
main()
{
int m,i,k,h=0,leap=1;
printf("\n");
for(m=101;m<=200;m++)
{ k=sqrt(m+1);

for(i=2;i<=k;i++)
if(m%i==0) //m%i==0什么意思啊
{leap=0;break;}
if(leap) {printf("%-4d",m);h++; // if(leap) 这里是什么意思啊
if(h%10==0) //("%-4d",m);
printf("\n");
}
leap=1;
}
printf("\nThe total is %d",h);
}

for(m=101;m<=200;m++) 设置循环 101--200
{ k=sqrt(m+1); 求m+1的平方根,值付给k

for(i=2;i<=k;i++) 设置判断是否为素数的调节循环,2---m+1的平方根
if(m%i==0) //m%i==0什么意思啊 如果m对i取余数为0,则表示可以被整除,那么就不是素数
{leap=0;break;} 置leap为0
if(leap) {printf("%-4d",m);h++; // if(leap) 这里是什么意思啊
如果循环结束后,leap不为0则表示m为素数
那么显示输出m值 并且素数总是h加1
if(h%10==0) //("%-4d",m); 如果素数到10个则换行。
printf("\n");
}
leap=1; 恢复leap为1
}
printf("\nThe total is %d",h); 显示输出素数总数

难道你上课时在睡觉吗???这么简单的题还出来问??丢不丢人啊????