break语句使用时产生的某种疑问

问题遇到的现象和发生背景

在大一教材书上有关continue和break语句时产生的疑惑

用代码块功能插入代码,请勿粘贴截图

#include
int main()
{
int k=4,n;
for(n=0;n
{
if(n%2==0)
{
k+=5;
break;
}
k--;
}
printf("k=%d, n=%d\n",k,n);
return 0;
}

运行结果及报错内容

结果k=9,n=0

我想要达到的结果

break语句在嵌套循环中不是只跳出直接包含它的那个循环吗,但这个为什么是break语句执行后直接跳出了整个大的循环那?

注意看下,这个break所在的for循环只有一层啊,所以直接跳出来了
continue它是跳过本次循环,就是跳过本次循环中continue后的所有内容不执行,之后的循环是不会退出的

程序中包含break的循环就是for,所以break直接跳出并终止循环了。continue是跳过本轮循环,即跳过循环中continue后面所有的内容不执行,直接开启下一轮循环。