问答详情
源自:4-10 循环结构之三种循环比较

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么

提问者:qq_盼望_03970402 2016-09-16 18:57

个回答

  • 泪的天堂3954022
    2016-09-16 20:20:36
    已采纳

    ①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 ③我也是菜鸟 试验几次发现的 希望采纳。

  • 慕仔2485288
    2016-09-16 19:51:40

    逗号是并列关系,需要同时满足。a+2比i+1递进快,所以判断主要取决于a。