求二到十之间的素数之和

我哪里错了呢?大一新生,没教,看不出哪里错了,请各位神仙指点迷津,拯救困境中的初学者,非常感谢非常感谢

img

你得弄清while跟if的区别呀,while是循环语句,if是比较控制分支的语句,
你这样a为0的话不就死循环了么,这个while语句里边又没有重新给a赋值,肯定是要用if去比较呀

img

供参考:

#include<stdio.h>
int main()
{
    int sum = 0, a, r, n;
    scanf("%d", &n);
    for (a = 1; a <= n; a++)
    {
        for (r = 2; r < a; r++) 
        {
            if (a % r == 0)
                break;
        }
        if (a == r) { 
            sum += a;
        }
    }
    printf("Sum=%d", sum);
    return 0;
}