若有以下程序 #include<stdio.h> int fun(int y) {int y; y=x++: return y; } main( ) {int k; for(k=0;k<3;k++){prinff("%d,",fun(k)+k);k++;}

admin2018-06-29  38

问题 若有以下程序
#include<stdio.h>
int fun(int y)
{int y;
y=x++:
return y;
}
main( )
{int k;
for(k=0;k<3;k++){prinff("%d,",fun(k)+k);k++;}
}
执行后的输出结果是(    )。

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

答案C

解析 fun( )函数的功能是将参数x的值赋给y,然后x自增1,返回y的值,所以fun( )的返回值与实参值相同;main( )函数的for循环中,k的初值为0,执行printf语句时,输出fun(0)+0,结果为0;接着执行两次k++,此时k的值为2,循环条件k<3满足,继续执行prinff( )函数,输出fun(2)+2,结果为4;接着再次执行2次k++,k为4,不满足循环条件,程序运行结束,所以程序输出结果为:0,4,本题答案为C。
转载请注明原文地址:https://kaotiyun.com/show/D3xp777K
0

最新回复(0)