#include
#include
void main()
{
int i,j,k=0,t=0;
for (i=3;i<=100;i++)
for(j=2;j<=i-1;j++)
if (i%j!=0)
k=k+1;
if (k==i-2)
t=t+1;
printf("%d\n",t);
}
你的代码把格式调整一下之后是这样
最后的if语句判断k是否等于i-2,i最后的值是101,所以是判断k是否等于99
k不等于99,那么t的值就不会变,所以就输出0,而且只有一次输出
你的输出应该是放在外层循环里面的,因为i才是那个被判断是否为素数的变量
你的算法应该也有问题,k和t自增是要干什么?