给出2个大整数A,B,计算A*B的结果。
Input
第1行:大数A 第2行:大数B (A,B的长度 <= 1000,A,B >= 0)
Output
输出A * B
Input示例
123456 234567
Output示例
28958703552
#include<bits/stdc++.h> using namespace std; int main(){ char a[10001],b[10001]; int j,k,l=0,i=0,t=0,r,c[100001]={0},d[10000],e[10000]; cin>>a>>b; for(j=0;j<strlen(a);j++) d[j]=a[j]-'0'; //将字符转化为数字存储 for(j=0;j<strlen(b);j++) e[j]=b[j]-'0'; for(j=strlen(a)-1;j>=0;j--){ l=strlen(a)-j-1; //错位 for(k=strlen(b)-1;k>=0;k--){ t=d[j]*e[k]+c[l]; c[l]=t%10; //储存 if(t>9) c[l+1]=c[l+1]+t/10; //如果大于9 将存在下一个位置上 l++; } } for(j=100000;j>=0;j--){ if(c[j]!=0){ r=j; break; } } for(j=r;j>=0;j--){ cout<<c[j]; } }
加油 因为转专业的缘故宿舍的都出去实习了 我自己一个人待在宿舍感觉好孤单啊·====早知道就不转专业了 转过去我也没有好好听课 还不如不转呢 唉 心痛