Unhandled exception at 0x00381977 in Lab_2.exe: 0xC0000094: Integer division by zero

int a = 1;
int b = 2;
int c = 3;
int d = 4;

a *= d; 
d /= a; 
a /= d;
    printf("%d %d ", a, d);

    b *= c; //[6; 2]
    c /= b; //[6; 3]
    b /= c;//[2; 3]
    printf("%d %d ", b, c);

Ответы (2 шт):

Автор решения: Mikhailo
int a = 1;
int b = 2;
int c = 3;
int d = 4;

a *= d;            // a = 4
d /= a;            // d = 1
a /= d;            // a = 4
printf("%d %d ", a, d);

b *= c; //[6; 2]    // b = 6
c /= b; //[6; 3]    // с = 0 !!!!!!
b /= c;//[2; 3]     //  ДЕЛЕНИЕ НА НОЛЬ!!!!
printf("%d %d ", b, c);

Все понятно?

→ Ссылка
Автор решения: Zhihar

а что вы хотели?

a *= d = 1 * 4 = 4

d /= a = 4 / 4 = 1

a /= d = 4 / 1 = 4

b *= c = 2 * 3 = 6

c /= b = 3 / 6 = 0 - ведь у нас только целые числа и деление тоже целочисленное

b /= c = 6 / 0 - и вот тут ошибка деления на ноль и вылезает

→ Ссылка