若有以下程序: #include main( ) { int a=6,b=0,c=0; for(;a;) { b+=a; a-=++c; } printf("%d,%d,%d\n",a,b,c); }

admin2015-08-09  27

问题 若有以下程序:
    #include
    main( )
    {  int a=6,b=0,c=0;
    for(;a;)  { b+=a;  a-=++c;  }
    printf("%d,%d,%d\n",a,b,c);
    }
    则程序的输出结果是(    )。

选项 A、1,14,3
B、0,14,3
C、0,18,3
D、0,14,6

答案B

解析 本循环的条件判断时,只要a为0就退出循环体,初始a的值为6,满足条件,执行完循环体后b的值为6,a-=++c即a=a-(++C),所以a的值为5,c的值为1;第二次循环后b的值为11,a的值为3,c的值为2;第三次也是最后循环后,a的值为0,b的值14,c的值为3。
转载请注明原文地址:https://kaotiyun.com/show/bLDp777K
0

最新回复(0)