|
看了论坛中的挑战5题解.实在是看的一知半解.一直琢磨用书中学到的知识解题.一直都不能完美的解答.!困扰了很久.下面是不完美的解法.各位看看能否有什么办法直接可以将2这个数在算法中放进去.? 我是直接算了质数的.不然的话最后输出的答案就是1473了.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,i,sum;
sum=1; //事先将质数2的数放进去
for(a=3;a<=12345;a++) //所以此处循环从3开始
{
i=0; //i的值为判断这个数是否为质数
b=2;
while (b<a)
{
i=a%b; //当a的值除以b的值的余数为0的时候
if (i==0) //已经判断值不为质数
break;//跳出循环
b++;
}
if (i!=0)
{
sum++;
}
}
printf("%d\n",sum);
system("pause");
return 0;
}
|
|