为什么第二个for循环不加中括号是对的,加了就不对了?

img

可以加,加对地方:

int fun(int m){

    int i, k, S = 0;
    for (i = 2; i <= m; i++) {
        for (k = 2; k < i; k++){ //这里加 {
            if (i % k == 0){
                break;
            }
        }             //这里加 }
        if (k == i) {
            S += i;
        }
    }
    return S;
}

我估计你的二重循环括号是把

if (k == i) {
            s += i;
        }

```c
圈在了二重循环里面。这段逻辑应该是属于一重循环的。 建议编码风格是:一切的判断和循环,别管单行多行都加括号。

你在说什么呢,中括号是数组呀,你这里哪里有数组了