解法一

#include<iostream>
using namespace std;

long long res;
int a, b, sum; // 123 45
int a_buf[20], b_buf[20], a_idx = 0, b_idx = 0;
int main()
{
	while(cin >> a >> b)
	{
		int x;
		while(a != 0)
		{
			x = a % 10;
			a /= 10;
			a_buf[a_idx ++] = x;
		}
		
		while(b != 0)
		{
			x = b % 10;
			b /= 10;
			b_buf[b_idx ++] = x;
		}
		
		for(int i = 0; i < a_idx; i++)
			for(int j = 0; j < b_idx; j++)
				sum += (a_buf[i] * b_buf[j]);
		cout << sum << endl;
	}
	return 0; 
}

解法二

#include<iostream>
using namespace std;

long long res;
string p, q;
int main()
{
	while(cin >> p >> q)
	{
		for(int i = 0; i < p.size(); i++)
		{
			for(int j = 0; j < q.size(); j++)
			{
				int a = p[i] - '0';
				int b = q[j] - '0';
				res += (a * b);	
			}
		}
		
		cout << res << endl;
	}
	return 0; 
}