题目描述
请统计出100以内所有的素数,并计算这些素数的和!
分析
素数又称为质数,其中2是最小的素数。
什么是素数?素数就是大于1的自然数中,除了1和它的本身以外不再有其他因数的数叫做素数。
代码解析
方法一:
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,k,n,sum=0;
printf("100以内所有的素数为:");
for(i=2;i<=100;i++){
k=(int)sqrt(i);
for(j=2;j<=k;j++)
if(i%j==0) break;
if(j>k){
printf("%d ",i);
n++;
sum+=i;
}
}
printf("\n");
printf("100以内所有素数的和为%d",sum);
return 0;
}
方法二:
#include <stdio.h>
int main()
{
int i,j,sum=0;
printf("100以内所有的素数为:");
for(i=2;i<=100;i++){
for(j=2;j<i;j++){
if(i%j==0){
break;
}
}
if(j==i){
sum+=i;
printf("%d ",i);
}
}
printf("\n");
printf("100以内所有素数的和为:%d",sum);
return 0;
}
运行结果