①程序
int a,b,c;
for(a=2;a<6;a++,a++)
/*逗号表达式a++,a++等于a+=2*/
{
c=1;/*重置c的值*/
for(b=a;b<6;b++)c+=b;
}
printf("%d\n",c);
~
②分析
for(a=2;a<6;a++,a++)
等于for(a=2;a<6;a+=2)
即a=2或a=4,
外循环2次。
~
c=1
表示重置c的值,
即a=2时c的值被舍去,
只剩下a=4时c的取值,
即外循环有效值变成1次。
~
当a=4时,
for(b=a;b<6;b++)c+=b;
b=4或b=5,
内循环2次。
~
总循环=2次=外循环1次×内循环2次
即c循环求2次值
~
第一次c+=b
c=c+b=1+4=5
~
第二次c+=b
c=c+b=5+5=10
最终结果为c=10