c语言中n=1 while(n--)这条语句执行的时候当n=0的时候,while语句停止运行,但“c--”还要运行吗?

就是说最后n=0,还是n=-1
2025-04-24 12:22:54
推荐回答(4个)
回答1:

对于n--,这个是进行后置运算,先赋值,后再进行自减。
当n=1时,把1赋给n,n再进行自减,此时n=0;
当n=0时,执行n--的时候,先把0赋给n,再进行自减,则n=-1,所以最后的结果为-1

回答2:

最后是-1,过程是这样的:
第一次循环,n=1,满足循环的条件,然后n自减1,即n=0
第二次循环,n=0,不满足循环的条件,但是n--这个语句已经执行,n=-1

回答3:

执行,while不是判断n是否为0,而是判断整个表达式的值,也就是n--。当n=0,计算这个表达式,结果是n没减的值,但是表达式会让n减少,所以最终n=-1 。

回答4:

"c--"哪里来的??从上面没看到有c--啊
最后是执行到n=-1,因为n--是一个后置表达式,while()内且是表达式的值当表达式为0时停止循环,而此时n=-1