战地1942配置:关于C语言问题

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 01:14:00
main()
??{ int a=1,b;
??for(b=1;b<=10;b++)
??{ if(a>=8)break;
??if(a%2==1){a+=5;continue;}
??a-=3;
??}
??printf("%d\n",b);
??}
里面的B和A有相互作用吗

结果是4,
因为for里面有一个
if(a>=8) break;
所以b不会走到11,因此a就间接地影响了b
每次循环a、b的值
b a(循环后)
1 6
2 3
3 8
4 发现a>=8,break了

就看你的相互作用的定义是什么了,不过b的取值当然和a的初始值有关,不是循环次数,a的取值可以决定循环次数,也就是b

A和B 是有关系,因为A主要作为判断条件,从而决定是否跳出循环,也就决定了B的输出不同。

结果为5
a与b的关系:
a b
1 1
6 2
3 3
8 4
当最后一次循环时,了的值为4
但当b为4时for循环成立,条件成立则b++,所以b变为5,进入循环中的下一条语句,a=8,跳出循环。最后输出b的值为5。

C语言里面允许IF语句构成的循环用CONTINU么?