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

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 12:45:13
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)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;