100以内的素数
素数(质数):除了1和它本身 没有其它的数能够被其整除
合数:除了1和它本身 还有其他的数能够被其整除
注意: 1既不是素数也不是合数
求出一个数是否为素数的时间复杂度是O(n)
求出一个范围内素数的时间复杂度是O(n*n)
从键盘输入一个数 采用有参有返回值函数 判断是否为素数
num 1 num (2–num-1)
采用有参有返回函数 求出 100以内的所有的素数 并求出素数和
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include<ctype.h>
#define MAXSIZE 20
int primeNum(int num) {
int i;
int flag=0;//标识变量
for(i=2; i<num; i++) {
if(num%i==0) {
flag++;//若i能够被num整除 则标识变量累加
break;
}
}
if(flag==0&&num!=1) { //判断标识变量是否有变化
return 1;//是素数返回
} else {
return 0;//不是素数返回0
}
}
int main() {
int i;
int sum=0;
for(i=1; i<=100; i++) {
if(primeNum(i)==1) {
sum+=i;//素数累加
printf("%d ",i);//输出素数
}
}
printf("\n100以内的素数之和是%d",sum);
return 0;
}