百科知识

探索100以内所有神秘的素数有哪些,一起找找看吧!

#include<stdio.h>

#include<windows.h>

//核心逻辑概述:初始化变量i为100,并将其作为起始值,每循环一次进行累加。素数的定义是仅有1和其本身两个因数,因此设置变量t用于遍历可能的除数,从2开始至i-1。若在遍历过程中发现i能被t整除,则立即终止内层循环,表明i不是素数;若遍历结束仍未找到除数,则判定i为素数,输出其值。

void test1()

{

int i, t;

for(i = 100; i <= 200; i++)

{

for(t = 2; t < i; t++)

{

if(i % t == 0) break; // 若i能被t整除,则i非素数,终止内层循环

else

printf(“%d、”, i); /*采用中文顿号进行分隔,验证其可行性*/

break; // 在找到第一个非除数后即输出,避免重复输出

}

}

printf(“是素数!\n”);

}

void test2()

{

int i = 100, t = 2;

while(i < 200)

{

i++;

while(t < 199)

{

if(i % t == 0) break; // 若i能被t整除,则终止内层循环

else if(i % t == 1) printf(“%d “, i); // 此处逻辑可能存在误差,通常判断素数不涉及余1的情况

break; // 在找到第一个非除数后即输出,避免重复输出

t++;

}

}

printf(“是素数\n”);

}

void test3()

{

int i = 100, t = 2;

do

{

i++;

do

{

if(i % t == 0) break; // 若i能被t整除,则终止内层循环

else if(i % t == 1) printf(“%d “, i); // 此处逻辑可能存在误差,通常判断素数不涉及余1的情况

break; // 在找到第一个非除数后即输出,避免重复输出

t++;

} while(t < 199);

} while(i < 200);

printf(“是素数\n”);

}

void main()

{

test1();

test2();

test3();

system(“pause”);

}

————————————————

原文链接:https://blog.csdn.net/maoshanbo/article/details/125399762