有以下程序 #include main() { int a = 3; do { printf("%d,", a-=2 ); } while( ! (--a) ); printf("\n"); } 程序运行后的输出结果是( )。

admin2019-06-09  14

问题 有以下程序
#include
main()
{ int a = 3;
do
{ printf("%d,", a-=2 ); }
while( ! (--a) );
printf("\n");
}
程序运行后的输出结果是( )。

选项 A、1, -2,
B、1,
C、3,0,
D、1,0

答案A

解析 循环条件是表达式"! (--a)",即当--a为0时,循环才会继续进行。该程序中do-while循环了两次,第一次循环输出a-=2的值,即1。之后判定循环条件为真,进入第二次循环输出值-2,判定循环条件为"!(-3)",为假,结束循环,所以输出的结果为选项A)。
转载请注明原文地址:https://kaotiyun.com/show/RxRp777K
0

最新回复(0)