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

admin2015-07-31  27

问题 若有以下程序
#include
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++;}相当于while(a&&(b==0)){ b+=a;a-=c++;}。
    因此C选项正确。
转载请注明原文地址:https://kaotiyun.com/show/OIDp777K
0

最新回复(0)