`#include[HTML_REMOVED]
define mian main
define QWQ puts(“QWQ”);
define MAXN 10500
//define是宏定义,define a b的作用是把a代替为b执行。
//这里的意思是把MAXN替换成10500执行
//请无视上方两个的宏定义(QWQ)
using namespace std;
string a, b;
//选择字符串。因为字符串储存了每个串的长度,可以直接调用。
int na[MAXN], nb[MAXN], ans[MAXN];
bool pd;
int main()
{
cin >> a >> b;
if((a < b && a.size() == b.size()) || a.size() < b.size())
{
swap(a, b);
pd = true;
}
for(int i = a.size(); i > 0; i –)na[i] = a[a.size() - i] - ‘0’;
for(int i = b.size(); i > 0; i –)nb[i] = b[b.size() - i] - ‘0’;
//将字符串中的信息转化到数组中,数组模拟数字。
int maxl = max(a.size(), b.size());
//找到两个数中的最大位,为for循环服务
for(int i = 1; i <= maxl; i ++)
{
if(na[i] < nb[i])
{
na[i + 1] –;
na[i] += 10;
}
ans[i] = na[i] - nb[i];
}
while(ans[maxl] == 0)maxl --;//防止减后降位,多输出若干0
if(pd == true)cout << "-";//b>a时,a - b < 0 所以打上负号
for(int i = maxl; i > 0; i --)cout << ans[i];
if(maxl < 1)cout << "0";
return 0;
}`