大数相乘算法
来源:互联网 发布:linux查看历史命令 编辑:程序博客网 时间:2024/05/01 03:45
原文地址:http://hi.baidu.com/huifeng00/item/8a7ac81472d986028ebde496
C语言实现大数相乘
#include <string.h>#include <stdio.h>#define SIZE 50int a[SIZE],b[SIZE],c[SIZE*2];void big_multi(int a[],int b[],int c[]){int i,j;for (i=0;i<SIZE;i++) for(j=0;j<SIZE;j++) c[i+j] += a[i]*b[j];//这里计算每位对应的计算结果,暂不考虑进位 for (i=0;i<SIZE*2;i++) { c[i+1] += c[i]/10;//这里就是进位,因为每位/10的商就是进位 c[i] %= 10;//这里就是每位对应的最终结果 }}int main(){//两个大整数char A[] = "123456789";char B[] = "987654321";char C[2*SIZE]; int i = strlen(A)-1,j = strlen(B)-1; int index,k=0;//把大整数存储到数组中去,从大数的最低位依次存储到数组中for (index = i;index >=0;index--) a[i-index] = A[index]-'0';for (index = j;index >=0;index--) b[j-index] = B[index]-'0';big_multi(a,b,c);//把结果存储到字符数组C中index = i+j+1;while (!c[index]) index--; while (index!=-1) { C[k++] = c[index--]+'0'; }C[k] = 0;printf("%s * %s : \n%s\n",A,B,C);return 0;}
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘的算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法
- 大数相乘-算法分析
- 大数相乘算法
- 大数相乘算法
- 大数相乘算法实现
- IOS通信加密
- git 常用操作记录
- java远程调试、监控虚拟机
- C# 计算时间差 用timespan函数
- 开发环境为代理网络的更新eclipse插件方法
- 大数相乘算法
- 在c++中int转十六进制八进制二进制字符串
- oracle中删除重复记录
- java的四舍五入
- XML 文件的读写操作
- 账簿登记重要十条规则
- iOS textView的使用总结
- 【骷髅苹果xp主题★(∩_∩)★】
- 对于手势的一些思考(转载)