问题描述
- 在acm上刷题老是通不过,求大神指点一二,到底问题出在哪里。不胜感激!!!
-
#include
#includeusing namespace std;
int main()
{
int T;
int k,t=0;
int i, j, n1, n2;
char a[1010], b[1010], c[1015];
string d[20], e[20], f[20];cin>>T; for(k=1; k<=T; k++) { cin>>a>>b; d[k-1]=a; e[k-1]=b; n1=strlen(a); n2=strlen(b); if(n1>=n2) { for(i=n1-1,j=n2-1; i>=0; i--,j--) { if(j>=0) { c[i]=a[i]+b[j]-48+t; t=(c[i]-48)/10; c[i]=(c[i]-48)%10+48; } else { c[i]=a[i]+t; t=(c[i]-48)/10; c[i]=(c[i]-48)%10+48; } } if(k==T)cout<<endl; f[k-1]=c; c[n1]=0; } else { for(i=n1-1,j=n2-1; j>=0; i--,j--) { if(i>=0) { c[j]=a[i]+b[j]-48+t; t=(c[j]-48)/10; c[j]=(c[j]-48)%10+48; } else { c[j]=b[j]+t; t=(c[j]-48)/10; c[j]=(c[j]-48)%10+48; } } f[k-1]=c; c[n2]=0; } } for(k=1; k<=T; k++) { cout<<"Case "<<k<<":"<<endl; cout<<d[k-1]<<" + "<<e[k-1]<<" = "<<f[k-1]<<endl; if(k<T) {cout<<endl;} }
system("pause");
return 0;
}
时间: 2024-08-03 11:24:46