在c语言中int i=10; while(i-->0) ; printf("%d",i);结果是?,为什么...
发布网友
发布时间:1天前
我来回答
共4个回答
热心网友
时间:1天前
首先,--优先等级比>高,而且i--是先用再运行的,当i=0的时候,虽然while语句满足了终止条件,但i会先进行i>0的比较,然后再会进行自减变成-1,最后再进行输出的,所以结果是-1
热心网友
时间:1天前
-1
主要问题在i-->0
这里会先判断i>0后, i才自减1
所以当i=0时不满足,跳出while循环,还会进行自减,所以i=-1
热心网友
时间:1天前
-1
因为while()后面直接加了";"
那你的while循环其实就是
i--
while(i>0)
i--;
(只是i--的循环)
当i=-1时跳出循环,输出结果i
就为-1
热心网友
时间:1天前
结果是-1。
因为先判断表达式i-->0,先取值即10>0为真,再--,此时i=9
依次直到i=0,表达式不为真,此时i=-1,并且退出while循环。执行printf("%d",i);
打印输出:-1