请看看这个代码的问题。统计2到100中素数的个数

#include
#include
int main()
{
int i,j,count=0;
for(i=2;i<100;i++)
{ for(j=2;j<=sqrt(i1.0);j++)
{ if(i%j==0)
break;}
if(j>sqrt(i
1.0))
count++;
printf("%d",count);
getch();
return 0;
}


#include <stdio.h>

#define INTEGER_RANGE 100  //数字范围

int if_prime(int num);

int main()
{
    int sum = 0;
    /* 2是最小的素数,for循环范围为2-100 */
    for(int i = 2; i <= INTEGER_RANGE; i++)
    {
        if(if_prime(i))
            sum++;
    }
    printf("%d以内的素数个数为:%d\n", INTEGER_RANGE, sum);
    return 0;
}

/*
 * 判断是否为素数,是则返回1,否返回0
 * */
int if_prime(int num)
{
    int i = 0;
    for(i = 2; i < num; i++)
    {
        /* 如果该数有存在1以外的其他正因数,则不是素数 */
        if(num % i == 0)
            return 0;
    }
    return 1;
}