while(--k)s+=k 这个语句怎么理解啊额 K S的初始值是4 0

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/10 22:29:05
while(--k)s+=k 这个语句怎么理解啊额 K S的初始值是4 0
xQ/PrIt3<x H$,A$%:Dma(YBmeEzn'm 1^n=6Truaqi~(êP;Ǯ}[h֘w x=+4x'[hÎ1&V_ .&cyo1JkkkO:Uh$d@)L֨ⶁ#P%`U}CT!ZFs5+/oO5' S7Jq b7q|ie@F F@? vf$_q)2ч`8 Ѕ1;Eܮh ;N,v}!fh>`ʈ+; [O@󨫛Ak?2K\,d#Ah

while(--k)s+=k 这个语句怎么理解啊额 K S的初始值是4 0
while(--k)s+=k 这个语句怎么理解啊
额 K S的初始值是4 0

while(--k)s+=k 这个语句怎么理解啊额 K S的初始值是4 0
翻译成最一般的语法就是
while(k=k-1) //k每次先减1,减1后,如果k不为0,则执行{ }里的语句
{
s = s+k;
}
最开始k=4,s=0
第一轮:
--k → k=3 不为0 ,即条件为真,
所以执行循环体里的语句s+=k,即s = s+k; 即s = 0+3 ,所以 s = 3;
第二轮:
--k → k=2 不为0 ,即条件为真,
所以执行循环体里的语句s+=k,即s = s+k; 即s = 3+2 ,所以 s = 5;
第三轮:
--k → k=1 不为0 ,即条件为真,
所以执行循环体里的语句s+=k,即s = s+k; 即s = 5+1 ,所以 s = 6;
第四轮:
--k → k=0 为0 ,即条件为假,
不再进入循环体,跳出while循环,此循环到此结束.
此循环结束后各个变量的值为
k=0,s=6;