为什么flag要用double类型 避免整数除法运算什么意思,麻烦看一下
除法运算计算结果可能是小数,如果不用一个double的话,最终除法的结果是一个整形,比如5/3,结果是1
flag是分子,在+1,-1间切换。int/int结果是int,小数部分会被丢弃,比如1/2=0,因此需要用浮点数。