작성
·
250
답변 2
1
int total의 선언은 밖에 있어도 되지만,
문제의 답에서는 for i문 안에 total = 0으로 초기화가 반드시 되어야 합니다.
for i 행에 있어야 하는 이유는, total 값이 누적되기 때문입니다.
예를 들어 1번 학생의 총합이 270인 상태에서
for i 문에 total = 0이 없다면,
이후에 2번 학생의 성적이 더해지면,
2번 학생의 총합은 1번 학생의 총합 + 2번학생의 총합의 값이 나오기 때문입니다.
0
안녕하세요. 노베이스 비전공자 개린이님, 공식 서포터즈 OMG입니다.
총점 int total = 0; 인데 왜 for i(행) 문에서 변수를 선언하는 건지 원리를 잘 모르겠습니당..
-
total 변수를 미리 바깥에서 선언하고(int total;
또는 int total = 0;
) for문 i(행) 에서
total = 0;
으로 초기화만 해도 무방합니다.
예시)
int total;
for (int i = 0; ..)
total = 0;
-
강의에서와 같이 for문 i(행)에서 선언과 초기화를 동시에 한다면
변수의 사용범위가 for문 안으로만 제약이 생기고 변수의 사용 범위(scope)가 명확
해진다는 장점이 있습니다.
-
감사합니다.
감사합니다!!..total이 누적되는 걸 생각을 못했어요!! 바쁘신 데 감사드립니다