#JC1030. 大整数减法
大整数减法
一、单项选择题(每题2分,共20分)
1、大整数减法处理位数不同的数字,为了个位对齐,需要怎么做?()。 {{ select(1) }}
- 正序存入整型数组
- 逆序存入整型数组
- 直接用long long存储
- 直接按字符串相减
2、大整数减法中,逆序存储之后,当前位i不够减,高位下标是?()。 {{ select(2) }}
- i‑1
- i
- i+1
- 0
3、不够减时借位处理代码,下面正确的一组是?()。 {{ select(3) }}
a1[i+1]--; a1[i] +=10;a1[i]--; a1[i+1] +=10;a1[i+1]++; a1[i] -=10;a1[i]++; a1[i+1] -=10;
4、大整数减法计算完成后结果出现前导0,需要如何处理?()。 {{ select(4) }}
- 直接全部输出
- 找到第一个非0的高位下标,从此处开始输出
- 删除数组全部0元素
- 直接输出数组最后一位
5、被减数与减数完全相等,相减结果为0,处理循环for(k=lena‑1;k>0;k--),k最终值为?()。
{{ select(5) }}
- -1
- 0
- lena‑1
- lena
6、判断大整数a是否小于大整数b,条件错误的是?()。 {{ select(6) }}
lena < lenblena==lenb && strcmp(a,b)<0lena > lenblena < lenb || (lena==lenb && strcmp(a,b)<0)
7、当被减数小于减数,下面操作顺序正确的是?()。 {{ select(7) }}
- 交换数字→输出负号→再做减法
- 做减法→交换数字→输出负号
- 输出负号→直接做减法,不交换
- 直接做减法,不需要输出负号
8、strcmp(a,b)函数,当字符串a小于字符串b时返回值是?()。
{{ select(8) }}
- 等于0
- 小于0
- 大于0
- 返回字符串长度
9、大整数减法完整流程正确的是?()。 {{ select(9) }}
- 字符串输入→判断大小→逆序存储→按位相减处理借位→去前导0→逆序输出
- 逆序存储→字符串输入→去前导0→相减→输出
- 字符串输入→正序存储→按位相减→直接输出
- 判断大小→输出→逆序存储→相减
10、头文件<cstring>,主要是为了使用下面哪一组函数?()。
{{ select(10) }}
- cin、cout
- strlen、strcmp
- sort、swap
- printf、scanf
二、判断题(每题2分,共10分)
11、大整数减法位数不同时,直接正序存储数组就可以正确相减。() {{ select(11) }}
- 正确
- 错误
12、逆序存储时,个位保存在数组下标0的位置。() {{ select(12) }}
- 正确
- 错误
13、做借位处理:当前位不够减,高位加1,当前位减10。() {{ select(13) }}
- 正确
- 错误
14、两个大数相减结果全为0,程序要保证至少输出一个0,不能什么都不输出。() {{ select(14) }}
- 正确
- 错误
15、strcmp比较两个大整数字符串,是从高位开始逐位对比字符ASCII值。()
{{ select(15) }}
- 正确
- 错误