#include <iostream.h>
void main()
{
int a = 1,b = 10;
do{ b -= a ;
a ++ ;
}
while ( b -- <= 0 ) ;
cout << “a=” << a << “b=” << b <<endl ;}
结果:
a=2b=8;a为什么不等于2?
a=2b=8;a为什么不等于2?
这是什么问题,a输出不是2吗,没有空格没有换行,2跟b粘一起了而已
a=2,b=8是正确的!因为do...while至少会被执行一次,不管while条件是否符合。从while条件来看,只执行了一次。a++之后,a自然就等于2了,b-= a之后b=9,b--之后就是8了