게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
오늘 학원에서 배운 c언어 배열관련 해서 이해가 안됩니다.. 질문 합니다
게시물ID : programmer_13509짧은주소 복사하기
작성자 : 우아앙무지개
추천 : 0
조회수 : 560회
댓글수 : 5개
등록시간 : 2015/09/24 22:26:58
옵션
  • 본인삭제금지
배열 10개를 입력받아서 
0~ 0, 0~1, 0~2, 0~3 ~ 0~9 까지의 합을 차례대로 출력하는 프로그램을 오늘 배웠는데요 
이해가 가지 않는 부분이 있어서 글 올려요.

int arnData [10] = {0};

for (int i = 0; i < 10; i++){
}
for (int i = 1; i < 10; i++){
           arnData [i] = arnData[i -1] + i;

           printf ("%d\n", arnData[i]);
}

이렇게 하면 출력 결과가 
1,3,6,10,15,21,28,36,45 가 나오는데요 

arnData [i] = arnData[i -1] + i; 이 부분이 이해가 잘 안갑니다.
arnData [i] = arnData[i -1] + i; 에서 arnData [i] = arnData[i] + i; 를 입력하면 1,2,3,4,5,6,7,8,9 가 나오고 -1 를 입력하면 왜 1,3,6,10,15,21,28,36,45 가 나오는거죠?
(arnData [1] 일때 arnData[1 -1] + 1) = 1 이 되는거잖아요 그럼 첫번째 출력은 1이 되는거고
이런식으로 계산을 하면 맨 마지막 9번째 출력 결과는 (arnData [9] 일때 arnData[9 -1] + 9) = 17이 출력이 되어야 하는거 아닌가요?
저 뒤에 -1 이  for문의 i를 어떻게 하는거 같은데 이해가 안가네요..
i 가 10 보다 클때까지 1씩 증가를 시키는데 저기서 -1을 해버리면 계속 1만 나와야 하는거 아닌가요..?
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호