题型:组合题
#include <iostream>
#include <algorithm>
using namespace std;
const int MAXL = 1000;
int n, k, ans[MAXL];
int main(void)
{
cin >> n >> k;
if (!n) cout << 0 << endl;
else
{
int m = 0;
while (n)
{
ans[m++] = (n % (-k) + k) % k; 20 n = (ans[m - 1] - n) / k;
}
for (int i = m - 1; i >= 0; i--)
cout << char(ans[i] >= 10 ?
ans[i] + 'A' - 10 :
ans[i] + '0');
cout << endl;
}
return 0;
}假设输入的 n 在 int 范围内,k 为不小于 2 且不大于 36 的正整数,完成下面的判断题和单选题:
(1).当输入为“-255 8”时,输出为“( )”。
| A. 1400 |
B. 1401 |
| C. 417 |
D. 400 |
该算法的时间复杂度为 O(logk n)。( )
| A.正确 | B.错误 |
当输入为“1000000 19”时,输出为“( )”。
| A. BG939 |
B. 87GIB |
| C. 1CD428 |
D. 7CF1B |
当输入为“100 7”时,输出为( )。
| A. 202 |
B. 1515 |
| C. 244 |
D. 1754 |
删除第 23 行的强制类型转换,程序的行为不变。( )
| A.正确 | B.错误 |
除非输入的 n 为 0,否则程序输出的字符数为
| A.正确 | B.错误 |
更新时间:2022-12-06 16:00:59
|
【知识点】
CCF非专业级别软件能力认证CSP-S/提高级
抱歉! 您未登录, 不能查看答案和解析点击登录












