C语言for循环嵌套是怎么执行

来源:百度知道 编辑:UC知道 时间:2024/04/27 19:48:22
int k,j,s;
for(k=2;k<6;k++,k++)
{
s=1;
for(j=k;j<6;j++)s+=j;
}
printf("%d\n",s);
这是怎么执行的,我想请教一下;
还有
int k,j,s;
for(k=2;k<6;k++,k++)
{
s=1;
for(j=k;j<6;j++)s+=j;
printf("%d\n",s);
}
输出15和10,为什么要输出2个
你是要输出printf("%d\n",s); 为什么要输出两个S值,其实就是输出一个S值,为什么是两个

上面那个是:
第二个for受上面那个的控制,这么跟你说吧,(我用伪码表示哈),第一层:k=2,4,因为有两个k++,也就是k+=2;然后第二层:j受每次k值变化的影响,循环次数也不同,但是这个程序中s 的值应该为10,(当k为4的时候,j有两个值,4和5),因为每次循环过后s的值又回到1,

后面那个printf语句在}的里边,受循环控制

这样的循环看书都能明白的!