问题
填空题
有以下程序:
int sub(int n) { return(n/10+n%10); }
main()
{int x,y;
scanf("%d",&x);
y=sub(sub(sub(x)));
printf("%d\n",y);
}
若运行时输入1234<回车>,程序的输出结果是()。
答案
参考答案:J
解析:
[评析]本题考查的是函数的调用,函数sub调用后的返回值仍被作为实参传递给函数sub的形参,此种调用连续进行3次,第一次调用:sub(1234)的返回值为1234/10+1234%10,即127;第二次调用:sub(127)的返回值为127/10+127%10;即19;第三次调用:sub(19)的返回值为19/10+19%10,即10。所以程序输出的结果是10。