#include<stdio.h>
#include<math.h>
int main()
{
int a, b, c, d,i;
scanf_s("%d", &a);
d = 0;
while (a > 100)
{
i = 0;
for (b = 2; b <= a - 1; b++)
{
if (a % b == 0)
i++;
}
if (i == 0)
{
d = d + a;
}
a--;
}
printf("%d", d);
return 0;
}
前几天把我难的崩溃的题(当时还没学for循环...)
今天废了好长时间才弄出来..
一开始错误的原因是
没有在循环里加i=0
a=109往下输出109
但a=108时,i的数值在循环体内改变了,就不往下执行了