阅读程序(第一题):k 进制转换与数位和、逆序值

qf080627 组合题 共 个子题

阅读下面程序,完成后面的判断题和单选题。判断题正确填 A,错误填 B。

#include <cstdio>

int main() {
    int n, k;
    scanf("%d%d", &n, &k);
    int d[100], len = 0;
    while (n > 0) {
        d[len] = n % k;
        ++len;
        n /= k;
    }
    int s = 0;
    long long rev = 0;
    for (int i = 0; i < len; ++i) {
        s += d[i];
        rev = rev * k + d[i];
    }
    printf("%d %lld\n", s, rev);
    return 0;
}

子题 判断题

判断题:当输入为 "100 8" 时,输出的第一个数是 9。( )

A

正确

B

错误

子题 判断题

判断题:将第 7 行的 `while (n > 0)` 改为 `while (n > 1)` 后,当输入为 "100 8" 时,程序输出不变。( )

A

正确

B

错误

子题 判断题

判断题:当输入为 "6 2" 时,程序输出的两个数之和为 6。( )

A

正确

B

错误

子题 单选题

当输入为 "200 8" 时,输出为( )。

A

4 11

B

4 13

C

4 110

D

12 11

子题 单选题

将第 16 行的 `rev = rev * k + d[i];` 改为 `rev = rev * 10 + d[i];` 后,当输入为 "255 16" 时,输出的第二个数为( )。

A

150

B

255

C

165

D

750

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧