#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<time.h>
#define Max 1000000
void BigNumsAdd(char *numa,char *numb);
void BigNumsSub(char *numa,char *numb);
void BigNumsMul(char *numa,char *numb);
int check(char *s);
clock_t start,end;
void inscanf(char c,char *&n1,char *&n2){
char t;
int i=0;
while(1){
t=getchar();
if(t==c && !(c=='-'&&i==0)) break;
n1[i++]=t;
}
n1[i]=0;
i=0;
while(1){
t=getchar();
if(t==10) break;
n2[i++]=t;
}
n2[i]=0;
putchar('=');
}
void switcher(char *n,int *num,int &weishu) //将字符数组转换为整形数组
{ //整形数组的低位至高位分别
int i; //储存数据的个位到高位数字
for(i=0;i<Max+1;i++) num[i]=0;
for(i=1;i<weishu;i++)
num[i]=n[weishu-i]-'0';
if(n[0]=='+' || n[0]=='-')
{
weishu--;
num[0]=n[0];
}
else num[weishu]=n[0]-'0';
}
void BigNumsAdd(char *numa,char *numb) //大整数的相加,其中两个参数分别为两个待输入的字符串
{
int *Num1=NULL,*Num2=NULL,*answer=NULL;
int weishu1,weishu2,wei;
int i,s=0;
if(numa[0]=='-' && numb[0]!='-') //两个数一正一负的时候,改变符号后转跳到相减
{
numa[0]='+';
BigNumsSub(numb,numa);
return;
}
if(numb[0]=='-' && numa[0]!='-')
{
numb[0]='+';
BigNumsSub(numa,numb);
return;