vscode内一简单c语言程序运行输出异常,求解答

运行下面这个程序的时候出现异常,(mac系统):


#include<stdio.h>
int x=1;
int main()
{
    while(x<=10)
    {
        if(x==5)
        continue;
        printf("%d ",x);
        x++;
    }
    printf("OK");
    return 0;
}

在其他其他电脑上(windows系统)运行成功,打出来应该是1 2 3 4 然后陷入死循坏,但是没有打印,并且如果接下来运行其他程序也不会出结果,必须终止终端才能重新开始。
一开始怀疑是先运算出结果再打印,因此陷入循环就不打印了。
但是对于下面这个程序:

#include<stdio.h>

int main()
{
    printf("1\n");
    while(1);
    printf("2");
    return 0;
}

打印了数字1,然后就陷入循环没有响应,并且也是运行其他程序也不会出结果,必须终止终端才能重新开始。
不知道为什么,求解答/

第一个 当x=5时 执行 if(x==5) continue;下面x++不会运行了,所以x一直等于5,一直continue,可以把放在x++放在最上面,输出就没有5了
第二个 while(1);循环一直成立,本来就是死循环啊,你把1换0,循环不成立就会输出2了

等一下,是第一个程序无输出无响应,而不是为什么是1 2 3 4