题库首页 › GESP等级认证(Python) › 题目 25923

高精度减法中,假设两个高精度数按低位在前存储,且已经保证被减数不小于减数。下面处理借位逻辑代码中横线处应填入( )。 if a[i] < b[i]: a[i + 1] -= 1 # ------------------------ t = a[i] - b[i]

A:a[i] += 10
B:a[i] -= 10
C:b[i] += 10
D:a[i] = a[i + 1] + 10

正确答案:A

答案解析

从低位开始逐位相减,若当前位被减数小于减数,则需向高位借位。借位发生时,当前位数值增加10,同时高位数值相应减少1。由于存储方式为低位在前,数组下标递增方向即为数位由低到高的顺序。处理当前位i时,若a[i] < b[i],则从a[i+1]中借1,等价于a[i] += 10,且a[i+1] -= 1。借位调整必须在当前位计算前完成,确保当前位差值非负。整个过程基于已知被减数不小于减数,最终结果无需处理负号。

试卷来源:202606 CCF-GESP编程能力等级认证Python五级真题

本卷相关题目

在线做题 同科目题库