第1个回答 2012-04-04
#include <stdio.h>
#define N 100
int main()
{
int a[N],i=2,temp=0,j=0,tempp,sum,total=0;
while(i<=N)
{
i++;
temp=i;
if (i==2)
{a[j]=i;j++;}
else
while(temp)
{ temp--;
if (temp==1)
{ a[j]=i;j++;
break;}
else if(temp!=1&&(i%temp)==0)
break;
}
}
sum=j;
for(tempp=0;tempp<j;tempp++)
{ if(tempp%10==0)
printf("\n");
printf("%d\t",a[tempp]);
total+=a[tempp];
}
printf("\n\nThe total is %d\n",sum); //计算质数之和,不要可删除这行
printf("The total is %d\n",total); //计算质数个数,不要可删除这行
return 0;
}本回答被网友采纳
第2个回答 2012-04-04
#include <stdio.h>
#include <math.h>
int ss(int n) /*检查n是否为素数,如果是则返回1,否则返回0*/
{
int i;
for (i=2; i<=(int)sqrt((double)n); i++)
if (n%i==0) return 0;
return 1;
}
int main(void)
{
int i,j=0;
for (i=2; i<=100; i++)
if(ss(i))
{
j++;
printf("%5d",i);
if (j%10==0) printf("\n");
}
printf("\n");
return 0;
}