算法--大数相加问题
2014-11-24 09:51
274 查看
计算两个难以用基本数据类型表示的大数相加问题,当然本例并没有考虑正负号等问题,只是一个简单版本的……
#include<stdio.h> void BigNumAdd(char* A, char* B, char* R, int n) { R[n+1]=0; int n1=0, n2=0, sum=0, carry=0; for(int i=n-1; i>=0; i--) { n1=int(A[i]-'0'); n2=int(B[i]-'0'); sum=n1+n2+carry; if(sum<=9) { carry=0; R[i+1]=sum+'0'; } else { carry=sum/10; R[i+1]=sum%10+'0'; } } R[0]=carry+'0'; } int main(int argc, char** argv) { char A[21]="25654194285418412198"; char B[21]="12428113942584564598"; char C[22]; BigNumAdd(A, B, C, 20); return 0; }
相关文章推荐
- 两个大数相加比较符合自然运算的算法
- 大数相加的问题
- HDU1002大数相加问题
- 【算法拾遗】大数相加(不开辟额外空间)
- 大数问题:用字符串解决大数相加和相乘
- 两个大数相加比较符合自然运算的算法
- 每周算法练习——大数的乘法问题
- 用C处理大数相加问题
- 多个大数相加问题
- C/C++“大数相加算法”
- 大数相加问题
- C/C++语言最新华为机试题“大数相加算法”
- 利用堆栈解决大数相加问题
- 单链表表示的大数相加问题
- A+B Problem II(大数相加问题)
- 大数问题:用字符串解决大数相加和相乘(转载)
- hdu_1002 大数相加----高精度问题
- 算法题-大数相乘问题
- 算法入门-数学题之大数问题HDOJ1060&& HDOJ1061
- 大数处理问题(—)(大数相加)