admin 管理员组

文章数量: 887021


2023年12月23日发(作者:quotation怎么用)

C程序设计-求100以内所有素数

1、提示:素数又叫质数,指只能被1和自己本身整出的自然数(1和0即非质数又非合数)

方法一:

#include

#include

void main(){

int number = 2;

int i;

for(number ; number<=100; number++){ //1号for循环

for ( i=2; i<=sqrt(number); i++){ //2号for循环

if (number%i == 0){

break;

}

}

if (i>sqrt(number)) { //如果2号for循环结束时,if语句从来没执行,那么i的值肯定大 于sqrt(number),所以用这个表达式来判断是否为素数

printf("%dn",number);

}

}

}

方法二(笨,但却很容易理解的方法,设置标志变量flag)

#include

#include

void main(){

int number = 2;

int i;

char flag = 0;

for(number ; number<=100; number++){

flag = 1;

for ( i=2; i<=sqrt(number); i++){

if (number%i == 0){

flag = 0; //用标志变量来判断for循环是否成功进入if语句

break;

}

}

if (flag == 1) {

printf("%dn",number);

}

}

}

2、这里用到了 sqrt()函数,sqrt的全称是 squre root 即平方根,使用时别忘了引入头文件

#include

3、求100以内的素数,再判断某数n是否为素数时,不需要从2一直除到n,只需要从2除到sqrt(n)【注意sqrt(n)也要判断】即可


本文标签: 是否 判断 素数 变量 质数