帮忙运行一下这两个程序,多谢,急!!!!!
#include <iostream.h>#include <string.h>
void main()
{
char s1[1000],s2[1000],g1[1000],g2[1000],a[1001],c[1001],b[1];
int M,N,t,m=0;
cin.getline(s1,100);
cin.getline(s2,100);
M=strlen(s1);//求s1长度
N=strlen(s2);//求s2长度
if (strcmp(s1,s2)>=0)
{
for(int i=M-N;i>0;i--)
{
g1[i]="0";
}
strcat(g1,s2);//连接g1,s2
strcat(b,s1);//连接b,s1
for(i=M;i>0;i--);
{
t=(g1[i]-'0')+(b[i]-'0')+m;//将两相加的字符转化成整数
if(t>9)
{
m=1;t=t-10;
}
a[i]=t+'0';//输出所有两相加的整数再转化成字符串
} //实现进位
for( int j=M,i=1;i<j;i++,j--)
{
c[i]=a[i];
a[i]=a[j];
a[j]=c[i];
}
cout<<"a="<<a<<endl;//逆序输出
}
if (strcmp(s1,s2)<0)
{
for(int i=N-M;i>0;i--)
{
g2[i]="0";
}
strcat(g2,s1);//连接g2,s1
strcat(b,s2);//连接b,s2
for(i=N;i>0;i--);
{
t=(g2[i]-'0')+(b[i]-'0')+m;//将两相加的字符转化成整数
if(t>9)
{
m=1;t=t-10;
} //实现进位
a[i]=t+'0';//输出所有两相加的整数再转化成字符串
}
for( int j=N,i=1;i<j;i++,j--)
{
c[i]=a[i];
a[i]=a[j];
a[j]=c[i];
}
cout<<"a="<<a<<endl;//逆序输出
}
#include <iostream.h>
#include <string.h>
void main()
{
char s1[100],s2[100],g1[100],g2[100],a[101],c[101],b="0";
int M,N,t,m=0;
cin.getline(s1,100);
cin.getline(s2,100);
M=strlen(s1);//求s1长度
N=strlen(s2);//求s2长度
if (strcmp(s1,s2)>=0)
{
for(int i=M-N;i>0;i--)
{
g1[i]="0";
}
strcat(g1,s2);//连接g1,s2
strcat(b,s1);//连接b,s1
for(i=M;i>0;i--);
{
t=(b[i]-'0')-(g1[i]-'0')+m;//将两相减的字符转化成整数
if(t<0)
{
m=10;t=t+10;
b[i-1]=b[i-1]-'0'-1+'0'
} //实现借位
a[i]=t+'0';//输出所有两相减的整数再转化成字符串
}
for( int j=M,i=1;i<j;i++,j--)
{
c[i]=a[i];
a[i]=a[j];
a[j]=c[i];
}
cout<<"a="<<a<<endl;//逆序输出
}
if (strcmp(s1,s2)<0)
{
for(int i=N-M;i>0;i--)
{
g2[i]="0";
}
strcat(g2,s1);//连接g1,s2
strcat(b,s2);//连接b,s1
for(i=N;i>0;i--);
{
t=(b[i]-'0')-(g2[i]-'0')+m;//将两相减的字符转化成整数
if(t<0)
{
m=10;t=t+10;
b[i-1]=b[i-1]-'0'-1+'0'
} //实现借位
a[i]=t+'0';
} //输出所有两相减的整数再转化成字符串
for( int j=N,i=1;i<j;i++,j--)
{
c[i]=a[i];
a[i]=a[j];
a[j]=c[i];
}
cout<<"a="<<a<<endl;//逆序输出
}