大数相加 #include <iostream> using namespace std; int main() { char a[1000],b[1000],c[1000]; int n,Case = 1; cin>>n; while(n--) { cin>>a>>b; int i = strlen(a); int j = strlen(b); int jinwei = 0; int jj = --j; int ii = --i; if(i>j) { for(;j>-1;j--,i--) { c[i] =a[i] + b[j] + jinwei-'0'; if(c[i]>'9') { c[i] = c[i]-10; jinwei = 1; } else jinwei = 0; } for(i = ii-jj-1;i>-1;i--) { c[i] = a[i] +jinwei; if(c[i]>'9') { c[i] = c[i]-10; jinwei = 1; } else jinwei = 0; } cout<<"Case "<<Case<<":"<<endl; Case ++; for(i = 0;i<strlen(a);i++) cout<<a[i]; cout<<" + "; for(i = 0;i<strlen(b);i++) cout<<b[i]; cout<<" = "; if(jinwei == 1) cout<<"1"; for(i = 0;i<strlen(a);i++) cout<<c[i]; cout<<endl; if(n) cout<<endl; } else { for(;i>-1;i--,j--) { c[j] =a[i] + b[j] + jinwei-'0'; if(c[j]>'9') { c[j] = c[j]-10; jinwei = 1; } else jinwei = 0; } for(j = jj-ii-1;j>-1;j--) { c[j] = b[j] +jinwei; if(c[j]>'9') { c[j] = c[j]-10; jinwei = 1; } else jinwei = 0; } cout<<"Case "<<Case<<":"<<endl; Case++; for(i = 0;i<strlen(a);i++) cout<<a[i]; cout<<" + "; for(i = 0;i<strlen(b);i++) cout<<b[i]; cout<<" = "; if(jinwei == 1) cout<<"1"; for(i = 0;i<strlen(b);i++) cout<<c[i]; cout<<endl; if(n) cout<<endl; } } return 0; }