下列程序段的运行结果是(   )     求详细解答   

下列程序段的运行结果是(   )     求详细解答   ,第1张

答: B、1234

int x=1234;

do { printf("%2d",x--); }while(!x) ;

do 循环,第一次是无条件进入,这时 x=1234。

进打印语句,输出参数 x--, 是后缀自减1,在表达式中 x 不变,保持 1234,打印出1234,出了表达式再减1成 1233。所以循环语句可以看成:

do {

printf("%2d",x);

x=x-1;

}while(!x) ;

x=1233 大于 0 即真 等于 1。 所以 !x 等于 0, while 循环结束。

(输出格式 %2d 是 输出整型数占2位。但 c/c++语言 另有规定,当给的占位数不够数据用时,按数的实际需要 占位 输出。)

答案:4

首先你要明白n++的含义,即n在当前语句中依然以n的初值进行计算,执行完这个语句后n才等于n+1;

举个例子:n

=

0;

a

=

1

+

n++;

最后a

=

1;

n

=

1;

明白这个后下面就分三步分析你的问题:

1

当n

=

2时,首先会执行n++,但这条语句还没结束,所以n的值在这条语句中还是2,

所以2<=2满足条件,继续执行判断语句

2,这是n

=

3,首先执行n++,但这条语句还没结束,所以n的值在这条语句中还是3,

3<=2不满足条件,跳出while循环,不再执行判断语句;

3

完成判断语句后,n的值马上自增1,即n的值为4;

以上就是关于下列程序段的运行结果是(   )     求详细解答   全部的内容,包括:下列程序段的运行结果是(   )     求详细解答   、下面程序段的运行结果是( ) if(n=0); while(n++<=2); printf("%d",n); 结果是多少、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9309360.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存