#include"stdio.h" main() { int a,b; a=1;b=10; do {b-=a;a++;} while(b--<0); printf("%d,%d",a,b); }

请问一下 为什么是2,8 而不是-5,6 呢?
2025-05-15 09:04:51
推荐回答(3个)
回答1:

#include"stdio.h"
main()
{
int a,b; a=1;b=10;
do
{
b-=a; //b==9
a++; //a==2
} while(b--<0); //在使用b比较(b<0,不成立,跳出循环)之后再减1,既是 此句后b==8;
printf("%d,%d",a,b); //所以 结果是2,8;
}

回答2:

void main()
{
int a,b;
a=1;b=10;
do
{
b-=a; //b=b-a=9
a++;//a++后,a=2
}
while(b--<0); //b--后,b=8,大于0,结束循环输出结果
printf("%d,%d",a,b);//所以a=2,b=8
}

回答3:

你把while后括号内改为(b-->0) 就行了