int flag = 1 ; //定义符号状态变量
可以解释一下吗? 这里有些看不懂
谢谢
一般在C语言中定义一个变量flag,是一个来表示判断的变量,当做标志。例如当一种情况的时候,设flag为1,当另外一种情况时,设flag为0。
而这里是开始设置flag为1,第一次循环的时候又为-1,再次循环又为1。
一定要flag吗 用别的可以吗
相当于一个标记。
flag=flag*(-1);
才能做出1*1+(-1)*2+(1)*3+(-1)*4+(1)*5+(-1)*6+…+(-1)*100,正负号相互替换的效果
1-2+3-4+5-6+…-100等价于1*1+(-1)*2+(1)*3+(-1)*4+(1)*5+(-1)*6+…+(-1)*100,所以需要一个状态变量。