c语言求素数的程序,不知道为什么不能运行,请教大佬,大佬新年快乐。


#include<stdio.h>
int main(void)
{
    unsigned int value, per, i;
    bool prime;

    printf("Please enter a positive integer: ");
    while (scanf_s("%u", &value) != 0 && value>0);
    {

        for (per = 2; per <= value; per++)
        {
            for (prime = 1, i = 2; i * i <= per; i++)
            {
                if (per % i == 0)
                    prime = 0;
            }
            if (prime == 1)
                printf("%u ", per);
            
        }
        putchar('\n');
    }
    return 0;
}

赞! 

我已经知道答案了,是while()后面多了一个分号!