#include#include using namespace std; void calc(char *pA, char *pB, char *pC) { int lenA = strlen(pA); int lenB = strlen(pB); int pstart = lenA+lenB-1; int carry = 0;//进位 for(int i=lenA-1;i>=0;i--) { int indexC = pstart--;//保存结果的下标 for(int j=lenB-1;j>=0;j--) { int tmp = (pB[j]-'0')*(pA[i]-'0')+carry+(pC[indexC]-'0'); pC[indexC--] = tmp%10+'0'; carry = tmp/10; } pC[indexC] = carry+'0'; carry = 0; } } int main() { char strA[64]={0}; char strB[64]={0}; cin >> strA >> strB; char strC[strlen(strA)+strlen(strB)]; memset(strC,'0',strlen(strA)+strlen(strB)); calc(strA, strB, strC); for(int i=0;i



