99问答网
所有问题
请教大家,以下代码段的输出是什么啊? for ( int i=10; i> 1; i /=2 ) { printf("%d ", i++); }
为什么不是11 6 4 3呢?
举报该问题
推荐答案 2014-10-10
10 5 3 2
因为printf("%d ", i++); 是执行完本句之后+1,如果换成++i,结果就是11 6 4 3了
第一次是10,执行成功之后+1,11/2=5 在执行成功后+1 6/2=3 然后执行成功+1 4/2=2 执行成功+1
3/2=1 此时1>1不为真,
跳出循环
,所以结果是 10 5 3 2
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/XeBWeWjXWtBzttzzzv.html
其他回答
第1个回答 2014-10-05
5321111````````
i/=2 i=i/2;
相似回答
大家正在搜
相关问题
请教大家,以下代码段的输出为什么不是5 3 2 1? for...
以下代码段的输出是什么? for ( int i=10; i...
for ( int i=10; i> 1; i /=2 ) ...
请教一下下列代码输出是什么? // 1 2 3 for (i...
s=0 void f1() { int k=1; s=s+k...
以下代码段的输出是什么? for ( int i=10; i...
以下程序的输出结果是 main( ) { int x=10,...
以下程序段的输出结果是: int i = 0; for(i=...