输出的素数前出现奇怪数字

请问这个程序为什么在输出的素数前会输出别的数字(每行输出0 11之类的)

`#include
using namespace std;
bool isPrime(int x)
{
    if (x <= 1)
        return 0;
    for (int i = 2;i * i <= x;++i)
        if (x % i == 0)
            return 0;
    return 1;
}
int main()
{
    int sum = 0;
    int m, n;
    cin >> m >> n;
    for (int j = m;j <= n;j++)
    {
        if (1 == isPrime(j))
        {
            cout << j << endl;
            sum++;
        }
        cout << sum;


    }
    return 0;
}

```c++


输出的是你的sum 值吧 ,把输出sum放for循环外边,不然每次都会输出

img

cout << sum;
这代码不是你自己写的吗
输出那肯定不是调用printf就是调用cout了呗,随便一搜不就知道了

已解决,我那个cout位置错了

cout<<sum要放到for循环结束以后

sum初始值为0,那么,isPrime的返回值为0时,sum没有进行++的计算。sum的值就是0,
这时,cout << sum; 的输出就是0。