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

admin2021-07-09  22

问题 若有以下程序
#include<stdio.h>
int fun(int x)
{int y;
y=x++:
return y;
}
main()
{int k;
for(k=0;k<3;k++){pfinff("%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满足,继续执行printf()函数,输出fun(2)+2,结果为4;接着再次执行2次k++,k为4,不满足循环条件,程序运行结束,所以程序输出结果为:0,4,本题答案为C。
转载请注明原文地址:https://kaotiyun.com/show/7Ekp777K
0

最新回复(0)