int x=23;do {printf ("%d",x--);}while(!x);有没有详细一点的解释?

2025-06-27 20:05:24
推荐回答(2个)
回答1:

#include

void main()

{int x=23;

do

{

printf("%d",x--);

}while(!x);

printf("\n");

}

我真的很反感那个说循环输出的人,!非运算符(!)就是将0转化为1将非0的数转化为0 while(0)就不执行了!x--的意思是先取x的值打印然后使x减一!所以如果程序中还有一句printf()x就是为22了!

#include

void main()

{int x=23;

do

{

printf("%d\n",x--);

printf("%d",x);

}while(!x);

printf("\n");

}

回答2:

结果为23
int
x=23;
do
{
printf
("%d",x--);
///
这里输出x的值,之后--,输出23,执行x--后,x为22
}while(!x);
//
这里条件是!x,此时x=22,即x为真,执行!x后,为假,退出了循环