//检查一个数是否为素数的函数
function isPrime(number) {
if (number <2) {
return false
}
for (let i = 2i <numberi++) {
if (number % i === 0) {
return false
}
}
return true
}
//遍历1000~1200之间的数,判断是否为素数,并输出
for (let i = 1000i <= 1200i++) {
if (isPrime(i)) {
console.log(i)
}
}
以上代码中,我们先编写了一个isPrime函数,该函数用于判断一个数是否为素数(质数)。函数遍历小于该数的所有自然数,判断该数是否能被整除,如果不能被整除就是素数(质数)。
然后我们使用for循环遍历1000~1200之间的所有自然数,使用isPrime函数判断是否为素数,并将所有素数输出到控制台。
楼上的程序运行结果有问题哦。。。--------------------------------
1.
#include<stdio.h>
main()
{
int i, j, M, N
int flag//标志是否为质数
printf("input m:")
scanf("%d", &M)
printf("input n:")
scanf("%d", &N)//输入M和N
if(M<2)
{
M=2
printf("2\n")
}//小于2的数不为质数,直接从3数起,并且把质数2打印出来
for(i=M+1i<=Ni++)//从M到N一个个的数数
{
flag=0//初始化,为质数
for (int j=2j<=i/2j++) //从除以2开始,一直除以到i/2,(不用除到i了,判断9/7能不能整除没意义,肯定不行的)
{
if (!(i %j) ) //如果整除(%为取余数)
{
flag=1//制标志为1(不为质数)
break//跳到M到N的下一个数
}
}
if (flag==0) printf("%d\n",i)//如果从除以2开始,一直除以到i/2都不能整除,则为质数,打印出来。
}
}
------------------------
VC6.0调试输出
input m:3
input n:20
5
7
11
13
17
19
2
#include<stdio.h>
int main()
{
int i, j, M, N
int flag
printf("input m:")
scanf("%d", &M)
if(M<2)
{
M=2
printf("2\n")
return 0
}//小于2的数不为质数,直接从3数起,并且把质数2打印出来,退出
for(i=M+1i++)//从M到N一个个的数数
{
flag=0//初始化,为质数
for (j=2j<=i/2j++) //从除以2开始,一直除以到i/2,(不用除到i了,判断9/7能不能整除没意义,肯定不行的)
{
if (!(i %j) ) //如果整除(%为取余数)
{
flag=1//制标志为1(不为质数)
break//跳到M到N的下一个数
}
}
if (flag==0) printf("%d\n",i)
return 0//如果从除以2开始,一直除以到i/2都不能整除,则为质数,打印出来。
}
return 0
}
---------------------------
VC6.0调试输出
input m:8
11
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)