51Nod-1027-大数乘法
来源:互联网 发布:php用什么软件开发 编辑:程序博客网 时间:2024/05/29 18:05
给出2个大整数A,B,计算A*B的结果。
Input
第1行:大数A
第2行:大数B
(A,B的长度 <= 1000,A,B >= 0)
Output
输出A * B
Input示例
123456
234567
Output示例
28958703552
水题,不多解释了,就是字符串的处理!
代码C:
#include <stdio.h>#include <string.h>#define _MAX 1001void Carrying(int tag,int i,int j,int *p);int main(int argc, const char * argv[]){ int product[2 * _MAX],i=0,j=0,numOneLen,numTwoLen,tag; char numOne[_MAX],numTwo[_MAX]; memset(product, 0, sizeof(int) * 2 * _MAX); //初始化product数据为0 scanf("%s %s",numOne,numTwo); //存数据 numOneLen=(int)strlen(numOne); numTwoLen=(int)strlen(numTwo); //数据逆序 for (i=0; i<numOneLen/2; i++) { tag=numOne[i]; numOne[i]=numOne[numOneLen-1-i]; numOne[numOneLen-1-i]=tag; } for (i=0; i<numTwoLen/2; i++) { tag=numTwo[i]; numTwo[i]=numTwo[numTwoLen-1-i]; numTwo[numTwoLen-1-i]=tag; } //逐位相乘 for (i=0; i<numOneLen; i++) { for (j=0; j<numTwoLen; j++) { tag=((int)numOne[i]-48)*((int)numTwo[j]-48); Carrying(tag, i, j, product); //递归 } } //倒序输出结果 for (i=_MAX * 2 - 1; i>0; i--) { if (product[i]!=0) { break; //查找到第一个不等于0的跳出 } } for (j=i; j>=0; j--) { printf("%d",product[j]); } printf("\n"); return 0;}//递归进位函数void Carrying(int tag,int i,int j,int *p){ p[i+j]+=tag; if (p[i+j]>9) { tag=p[i+j]/10; p[i+j] %=10; Carrying(tag, i+1, j, p); //写成Carrying(tag, i, j+1, p);也成立,为了让i+j递增而已 } return ;}
题是很水,但是代码还是挺长的……OVER!!!
0 0
- 51Nod-1027-大数乘法
- 51nod -1027 . 大数乘法
- 51nod 1027 大数乘法
- 51nod 1027 大数乘法
- 51nod 1027 大数乘法
- 51nod 1027 大数乘法
- 【51nod】1027 大数乘法
- 51Nod 1027 大数乘法
- 51Nod-1027-大数乘法
- 51Nod 1027 大数乘法
- 51nod 1027 大数乘法
- 51Nod 1027 大数乘法
- 51Nod 大数乘法
- 51nod 大数乘法
- 1027 大数乘法 ——51Nod
- 51nod oj 1027 大数乘法【数组模拟】
- 51Nod-1028-大数乘法 V2
- 【51nod 1028 大数乘法 V2】
- MVC和MVP的梳理
- hbase0.98.9 Export工具使用
- __stdcall与__cdecl的区别
- ERROR: Cannot determine the location of the VS Common Tools folder.
- Java千百问_05面向对象(006)_is-a,has-a,like-a是什么
- 51Nod-1027-大数乘法
- xmpp开发IM即时通讯系列(二)--即时通讯服务器搭建(1)数据库搭建
- POJ 2186 Tarjan
- hiho 31 扫雷二
- VS用C语言连接SQL Server解决办法
- ListView
- RxJava学习资料及操作符总览
- BOOL与bool,不是一家人
- NioSocket实现HTTP协议