Это называется Undefined Behaviour
, не пытайтесь понять, почему это происходит, потому что, как следует из названия, это undefined
!Неопределенное поведение происходит, потому что вы пытаетесь напечатать двойное число, но вы передаете два целых числа.Обратите внимание, что вы также получаете предупреждение:
14: 25: warning: format '% f' ожидает аргумент типа 'double', но аргумент 2 имеет тип 'int' [-Wformat =]
Измените последнюю строку на эту:
printf("%f\n", 5.0/100);
И все будет работать, как и ожидалось.