【题目】
以下关于高精度运算的说法错误的是( )。
A. 高精度计算主要是用来处理大整数或需要保留多位小数的运算。
B. 大整数除以小整数的处理的步骤可以是,将被除数和除数对齐,从左到右逐位尝试将除数乘以某个数,通过减法得到新的被除数,并累加商。
C. 高精度乘法的运算时间只与参与运算的两个整数中长度较长者的位数有关。
D. 高精度加法运算的关键在于逐位相加并处理进位。
【答案】
C
【解析】
A.正确,因为高精度计算正是为了处理那些超出了标准数据类型(如int, float等)表示范围的数值,或者需要更高精度的数值运算。
B.正确,这实际上描述了一种长除法的过程,用于处理大整数除以小整数的情况。
C.错误,高精度乘法的运算时间实际上与两个参与运算的整数的位数都有关。因为乘法运算需要逐位相乘,并累加结果,所以两个数的位数都会影响到运算的复杂度。比如长度较长的是10亿位,较短的是1亿,用屁股想想也知道运算时间不可能不受这个1亿位影响。这里也涉及到一个蒙答案的技巧,就是凡是带有绝对字样的选项就要注意了,它极有可能就是错的,因为凡事无绝对,比如此选项就有这样的词“只与”。
D.正确,高精度加法确实需要逐位相加,并处理可能产生的进位。
故选C。
【题目来源】
2023 CCF非专业级别软件能力认证第一轮 (CSP-J1) 入门级C++语言试题 第7题