这个怎么算啊 c语言 c语言

img

关键是a的值,当a的值变为0时循环才结束,一步步来不是很难的

第一次循环完毕:b=6,a=5,c=1
第二次循环完毕: b = 11,a=3,c=2
第三次循环完毕:b=14,a=0,c=3
循环操作等价于

for(;a;){
  b=b+a;
  c=c+1;
  a=a-c;
}

其中关键是++c c会在参与运算前先自增,而c++会在运算完毕后再自增