%d %i 둘다 정수 입출력에 쓰이죠
printf에서는 둘의 의미는 같습니다 그런데
scanf 에서는 다릅니다 %d는 10진수만을 알아먹는 반면 %i 는 10진수,16진수,8진수 모두 알아먹습니다
예를들어 8진수 070을 입력했다 하면
%i 는 아 이게 8진수구나 하고 %d나 %i로 출력하라할때 10진수로 변환된 56을,
%d는 8진법이라는걸 인식못하고 머여 70이네 하고 그냥 70을 출력
따라서 똑똑한 i는 intelligent 의 약자고 10진수만 아는 바보 d는 dull 의 약자임을 알수있습니다(?)