思路分析
我们先看什么是素数:因数只有1和他本身的数叫素数。
举几个例子:
13:他的因数只有1和他本身,13就是素数。
12.:他的因数有1,2,3,4,6,12,所以12 不是素数。
我们可以通过判断一个数的因数情况来看这个数是不是素数。
写两个案例进行代码分析讲解:
1.打印输出100以内的所有素数。
2.判断一个数是不是素数。
注:代码分析都在代码注释里,这里不在重复进行代码分析。
打印输出100以内的所有素数代码如下
#include <stdio.h>
void main(){
int i,j;//定义变量
int a;//定义变量
for(i=2;i<100;i++){//求100以内的所有素数
a=1;//给变量a初始化为1
for(j=2;j<i;j++){//找到每个数的因数
if(i%j==0){//如果逻辑为假,这个数是素数,a还是为1
a=0;//如果逻辑判断为真,这个数不是素数,a赋值为0
break;//如果逻辑判断为真,结束本次循环,进入下一轮循环
}
}
if(a==1){
printf("%d是素数\n",i);//打印输出100以内的素数
}
}
}
打印输出100以内的所有素数代码运行结果如下
判断一个数是不是素数案例代码如下
#include<stdio.h>c
void main(){
int i,x;//定义变量
int a=1;//定义一个变量a并且赋值为1
scanf("%d",&x);//从键盘中输入一个整数
for(i=2;i<x;i++){//找到这个数的因数
if(x%i==0){//如果逻辑为假,这个数是素数,a还是为1
a=0;//如果逻辑判断为真,这个数不是素数,a赋值为0
break;//如果逻辑判断为真,结束本次循环,进入下一轮循环
}
}
if(a==1){
printf("%d是素数\n",x);
}
else{
printf("%d不是素数\n",x);
}
}
判断一个数是不是素数案例代码运行结果如下