C语言问题 这个怎么做啊 ?不明白大案为什么是10呢~~~

来源:百度知道 编辑:UC知道 时间:2024/05/18 03:43:21
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);

第一个循环,k每次增加2,又使s置为1。当第二次,即k增到4时,
s=1,然后第二个循环,j=4,j<6,那么j可以从4到5,而s=1+4+5=10。
然后回到第一个循环,这时k++,k++,k就变到6了,不满足k<6,于是退出了循环。
所以s=10

答案:1+4+5=10

k最大只能等于4
k=4时;
s还是等于1
s=1;
此时j=k=4;
j最大等于5
所以s+=j

1+4+5=10;