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

admin2015-08-09  26

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

选项 A、5,6,0
B、6,0,0
C、6,6,1
D、5,6,1

答案C

解析 本题重点考查c语言中for语句和逻辑表达式,for语句的一般形式为:
    for(表达式1;表达式2;表达式3)语句
    其循环中的“表达式1(循环变量赋初值)”、“表达式2(循环条件)”和“表达式3(循环变量增量)”都是选择项,即可以缺省,但“;”不能缺省。该题目中省略了“表达式l(循环变量赋初值)”和“表达式3(循环变量增量)”。for(;a&&(b==0);){b+=a;a-=c++;}相当于while(a&&(b==0)){b+=a;a-=c++;}。因此C选项正确。
转载请注明原文地址:https://kaotiyun.com/show/ELDp777K
0

最新回复(0)