for循環中逗號什么含義
#include <stdio.h>
int main()
{
?int i,a,sum;
?sum=0;
?for(i=1,a=2;i<100,a<=102;i+=2,a+=2)
?{
??sum=i-a+sum;
??printf("%d\n",sum);
?}
?return 0;
}
其中for循環中a<=102,結果為-51.
打成a<=100則為-50,從-50到-51的中間過程是什么?
i 不是只能為99么
#include <stdio.h>
int main()
{
?int i,a,sum;
?sum=0;
?for(i=1,a=2;i<100,a<=102;i+=2,a+=2)
?{
??sum=i-a+sum;
??printf("%d\n",sum);
?}
?return 0;
}
其中for循環中a<=102,結果為-51.
打成a<=100則為-50,從-50到-51的中間過程是什么?
i 不是只能為99么
2016-09-16
舉報
2016-09-16
①for循環中判斷式有逗號,判斷標準以逗號后面的為主,你可以把i=改為50, 60 自己試試對循環無影響②for循環中i<100,a<=102;為判斷式,若a<=100與102的不同是,a=100 i=99 sum=-50后在進行循環到判斷式因為a=102>100 不符合循環所以跳出循環 而i=101,a<=102會循環,所以sum=-51 ③我也是菜鳥 試驗幾次發現的 希望采納。
2016-09-16
逗號是并列關系,需要同時滿足。a+2比i+1遞進快,所以判斷主要取決于a。