getchar() 는 cin 으로 N 을 얻어낸 다음에 남아있는 \n 문자를 처음에 읽게 됩니다. 그래서, 지금 구조로는 한 번 더 읽어야 겠네요.
atoi 가 0~9 가 아니면 무시하는 듯 합니다. API Reference 찾아보셔요..
%d 는 space 나 enter 까지를 하나의 int 형 변수에 받는 것은 아실텐데,
%1d 는 숫자 한 글자만 읽을 수 있으니,
scanf("%d", &N);
scanf("%1d", &int변수) 하시면 됩니다.
kkjh8873 6년 전
숫자 N을 입력받아서 for문을원래
for (int i = 0; i <N; i++) 이렇게 돌렸더니 숫자 하나가 덜 더해지는거에요
그래서 for (int i = 0; i <=N; i++)로 바꾼거거든요
근데 이렇게하면 총 N+1번 for문이 돌아가는거아닌가요? 왜이렇게했을때만 처음부터 끝까지 숫자가 잘 더해지는걸까요 ㅠㅠ