问题 填空题

有以下程序: 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。

多项选择题
单项选择题 A1型题