题目链接:http://bailian.openjudge.cn/practice/1001/
题目描述:

解题思路: 高精度乘法,然后在做高精度乘法的同时还需要保存一下小数部分的位数。是一道难度适中的机试考题,需要保持熟悉!
参考代码:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=200;
int cnt1,cnt2;
int num1[N],num2[N];
int num3[N];
int pows_num1,pows_num2;
char ch[N];
int n;
int zheng[N],xiao[N];
int cnt_zheng,cnt_xiao;
void mul(){
int cnt_tot=cnt1+cnt2;
int pre=0;
memset(num3,0,sizeof(num3));
for(int i=1;i<=cnt1;i++){
for(int j=1;j<=cnt2;j++){
int cur_pos=i+j-1;
num3[cur_pos]+=num1[i]*num2[j];
}
}
for(int i=1;i<=cnt_tot;i++){
num3[i]+=pre;
pre=num3[i]/10;
num3[i]=num3[i]%

文章介绍了如何使用C++实现高精度乘法,同时保留小数部分的位数,适用于机试中的编程题目。
最低0.47元/天 解锁文章
260

被折叠的 条评论
为什么被折叠?



