13896. 珅泽教育CSP-J第一轮模拟考第十九套 第 28 题
珅泽教育CSP-J第一轮模拟考第十九套 第 28 题
阅读程序第2题
阅读下面的程序,完成第22—28题。
int length(int x)
{
int c = 0;
while (x > 0) {
c++;
x /= 10;
}
return c;
}
int select(int n, int k)
{
if (k > 0)
return select(n/10, k-1);
else
return n % 10;
}
int solve(int k)
{
int n = 1;
while (k > length(n)) {
k -= length(n);
n++;
}
return select(n, length(n) - k);
}
关于 select(n, k) 函数,以下说法正确的是( )。
{{ select(1) }}
- 当k为负数时,函数会无限递归
- 当k大于n的位数时,函数会返回n的最高位
- 函数返回n的十进制表示中,低位往高位数的第k+1位
- 函数返回n的十进制表示中,高位往低位数的第k+1位