百练2736 大整数减法
2011-08-09 10:13
239 查看
1,和加法差不多,注意借位就成。
2,怎么消去前面的0?这个值得注意..其实很简答的。
2,怎么消去前面的0?这个值得注意..其实很简答的。
#include <stdio.h> #include <string.h> #include <stdlib.h> #define size 200 int main() { int num1[size],num2[size],m; char s1[size],s2[size]; int n,i,k=0,a=0,b=0,len1,len2,maxlen; scanf("%d", &n); while(n--) { scanf("%s%s", s1, s2); memset(num1,0,sizeof(num1)); memset(num2,0,sizeof(num2)); len1 = strlen(s1); len2 = strlen(s2); if (len1 < len2) { break; } else { k = 0; for (i=len1-1; i>=0; i--) { num1[k++] = s1[i] - '0'; } k = 0; for (i=len2-1; i>=0; i--) { num2[k++] = s2[i] - '0'; } maxlen = len1 > len2 ? len1 : len2; for (i=0; i<maxlen; i++) { num1[i] -= num2[i]; if (num1[i] < 0) //减法借位 { num1[i] = 10 + num1[i]; num1[i+1] = num1[i+1] - 1; } } m = maxlen; while (!num1[m]) //m消掉0 { m--; } for(i=m; i>=0; i--) { printf("%d",num1[i]); } m = 0; if (n) { printf("\n"); } } } system("pause"); return 0; }
相关文章推荐
- Pku百练2736(大整数减法)
- OpenJudge 2736 大整数减法 C++
- 百练_2736大整数减法(大数相减)
- 百练2736/noi 11:大整数减法
- 2736 大整数减法
- 【Java】只允许使用加号,实现整数的减法,乘法,除法
- C/C++程序算法小练习--大整数减法
- zzuli 1627大整数减法
- 程序员面试金典: 9.7位操作 7.4只用加号实现整数的乘法、减法和除法运算
- 大整数的加法、减法和乘法
- 大整数减法
- 大整数算法[07] 绝对值减法
- 深入理解计算机系统(2.5)---二进制整数的加、减法运算(重要)
- 实现整数的乘法、减法和除法运算,只允许使用加号
- 两个大整数的减法
- 大整数的减法
- 实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。 例如:输入t
- 大整数加法减法与乘法
- 大整数-减法
- 整数高精度运算的库(加法,减法,乘法,除法,取模)