#include<bits/stdc++.h>
using namespace std;
char s[2000];
struct num{
int x[2000];
int len;
void read(){
cin>>s;
len=strlen(s);
reverse(s,s+len);
for(int i=1;i<=len;i++){
x[i]=s[i-1]-'0';
}
}
void print(){
for(int i=len;i>=1;i--){
cout<<x[i];
}
}
}a,b,c;
num operator * (num &a,num &b)
{
num c;
memset(c.x,0,sizeof c.x);
c.len=a.len+b.len-1;
for(int i=1;i<=a.len;i++){
for(int j=1;j<=b.len;j++){
c.x[i+j-1]+=a.x[i]*b.x[j];
}
}
for(int i=1;i<=c.len;i++){
if(c.x[i]>9){
c.x[i+1]+=c.x[i]/10;
c.x[i]%=10;
}
}
if(c.x[c.len+1]>0) c.len++;
while(c.x[c.len]==0&&c.len>1) c.len--;
return c;
}
num operator + (num &a,num &b)
{
num c;
memset(c.x,0,sizeof c.x);
c.len=a.len+b.len-1;
for(int i=1;i<=c.len;i++){
c.x[i]+=a.x[i]+b.x[i];
}
for(int i=1;i<=c.len;i++){
if(c.x[i]>9){
c.x[i+1]++;
c.x[i]-=10;
}
}
if(c.x[c.len+1]>0) c.len++;
return c;
}
int main()
{
return 0;
}
高精度+*已敲出,请问如何进行阶乘求和运算?