大整数减法
2017-07-25 19:59
190 查看
参照算法笔记P174
1065. A+B and C (64bit) (20)
1065. A+B and C (64bit) (20)
#include<stdio.h> #include<string.h> struct bign{ int d[1000]; int len; }; void init(bign &a){ int i; a.len=0; for(i=0;i<1000;i++){ a.d[i]=0; } } bign change(char *s){ bign a; init(a); int i,len=strlen(s); a.len=len; for(i=0;i<len;i++){ a.d[i]=s[len-1-i]-'0'; } return a; } bign sub(bign a,bign b){ int i; bign c; init(c); for(i=0;i<a.len||i<b.len;i++){ if(a.d[i]<b.d[i]){ a.d[i+1]--; a.d[i]=a.d[i]+10; } c.d[c.len++]=a.d[i]-b.d[i]; } while(c.len>=2&&c.d[c.len-1]==0){ c.len--; } return c; } void print(bign a){ int i; for(i=a.len-1;i>=0;i--){ printf("%d",a.d[i]); } } int main(){ char s1[1000],s2[1000]; scanf("%s %s",s1,s2);//默认s1代表的整数大于s2 bign a=change(s1); bign b=change(s2); bign c=sub(a,b); print(c); }
相关文章推荐
- 大整数减法 (与后来做的高精度减法不同是用了容器)
- 面试题目任意位数整数减法
- C/C++程序算法小练习--大整数减法
- 程序员面试金典: 9.7位操作 7.4只用加号实现整数的乘法、减法和除法运算
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 大整数减法(超过整型的表示范围)
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 华为机试题——整数减法
- 实现整数的乘法、减法和除法运算,只允许使用加号
- 2749(附大正整数减法)
- 大整数的减法
- 大整数减法模板
- 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。
- 大整数减法
- 大整数-减法
- 大整数减法
- 11.大整数减法
- 整数大数模拟 高精度加法 高精度减法 高精度乘法 高精度除法 c/c++ java
- 实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。 例如:输入t
- 大整数加法减法与乘法