Поскольку он использует c
в качестве int
в вычислениях и расширяет его при сохранении.
Перед умножением вам нужно наложить одну из c
на long long
.
Кроме того, я предлагаю вам использовать int64_t
вместо long long
, чтобы вы могли получить нужный вам тип / размер независимо от того, что (см. stdint.h для различных идентификаторов ).