有没有人会写判断一个数为素数的C语言呀?

来源:百度知道 编辑:UC知道 时间:2024/07/01 13:13:11
程序我看不懂,比如里面的X=SQRT(M),与for(Y=2;Y<=X;Y++)IF(x%y=0) break;
if(y>=x)printf("yes");
else printf("no");看不懂。为什么Y=2 还有(x%y=0)为什么就退出?
有谁帮我解释下,谢谢了。

IF(x%y=0) break;这句括号里面应该改成 if(x%y==0)
for(Y=2;Y<=X;Y++) 就是判断素数的循环呀 你先弄清素数的概念吧 你们书上应该有解释,x%y==0就不是素数了 还有c是严格区分大小写的 SQRT(M)错 应该是sqrt(M) 那个IF也要改成小写的 还要注意符号的问题要调到英文输入法在输入符号 比如括号,分号之类的!

晕!啥你的我的?

这不就《C语言学习》上的程序100例
教材很经典,用了要注明:

【程序12】
题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
2.程序源代码:
#include "stdio.h"
#include "conio.h"
#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)
{
leap=0;
break;
}
if(leap)
{
printf("%-4d",m);
h++;
if(h%10==0)
printf("\n");
}
leap=1;
}
printf("\nThe total is %d",h);<