1 简单的判断一个数是否为素数的程序
*
[1] 判断输入的数字是否为素数
*/
#include "stdio.h"
main()
{
int x;
int i;
scanf("%d",&x);
for(i=2;i<x;i++){
if( x%i ==0 ) /*当i是x的约数时,可以立即决定x不是素数 */
{ printf("NO\n");
return; /* 可以立刻退出程序 */
}
}
printf("YES\n"); /* 当for循环遍历完成且不退出时,会进行到这里,说明x是素数 */
}
2 求100-200之间的所有素数 ***** very important 使用到了函数
/*
[1] 判断输入的数字是否为素数
[2] 输出从100到200的素数
*/
#include "stdio.h"
/*
功能: 判断是否为素数
参数: 整型
返回结果:如果是素数的话,输出1;否则输出0
f(x)=x+1
*/
int isPrimer(int a){
int i;
for(i=2;i<a;i++){ /*当i是x的约数时,可以立即决定x不是素数 */
if(a%i==0)
return 0; /* 可以立刻返回结果为0 */
}
return 1; /* 当for循环遍历完成且不退出时,会进行到这里,说明x是素数,返回结果为1 */
}
main()
{
int x;
for(x=100;x<=200;x++){
if( isPrimer(x) )
printf( "%d ",x);
}
}
3 求100-200之间所有素数的和
/*
[1] 判断输入的数字是否为素数
[2] 输出从100到200的素数
[3] 计算从100到200的所有素数的和
*/
#include "stdio.h"
#include "math.h"
/*
功能: 判断是否为素数
参数: 整型
返回结果:如果是素数的话,输出1;否则输出0
f(x)=x+1
*/
int isPrimer(int a){
int i;
for(i=2;i<a;i++){ /*当i是x的约数时,可以立即决定x不是素数 */
if(a%i==0)
return 0; /* 可以立刻返回结果为0 */
}
return 1; /* 当for循环遍历完成且不退出时,会进行到这里,说明x是素数,返回结果为1 */
}
main()
{
int x;
int sum =0;
for(x=100;x<=200;x++){
if( isPrimer(x) )
sum += x;
}
printf("100 ~ 200 all primer sum is %d\n",sum);
}