若有以下程序 #include <stdio.h> main() { int a=6, b=0, c=0; for ( ;a&&(b==0); ) { b += a; a -= c++; }

admin2021-07-09  21

问题 若有以下程序
    #include <stdio.h>
    main()
    {  int  a=6, b=0, c=0;
       for ( ;a&&(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(循环变量增量)"都是选择项, 即可以缺省,但";"不能缺省。该题目中省略了"表达式1(循环变量赋初值)"和"表达式3(循环变量增量)"。for ( ;a&&(b==0); ){b+=a;a-=c++;}进入循环体b=b+a=6,a=a-c++=6,c=1。此时b=6不满足条件b==0循环退出。因此C选项正确。
转载请注明原文地址:https://kaotiyun.com/show/cetp777K
0

最新回复(0)