178페이지 해설 실전모의고사 3회 16번 문제입니다.
x 는 1이고, y는 16이라고 나왔는데 왜 16인가요? a배열의 값을 다 더해도 15값이 나와요.
main함수를 돌려서 initA(a); 는 배열 0~4까지 배열칸만드는게맞나요?
funcA(a)함수;
initA(a), funcA(a) 각각 void initA, void funcA 구문 아래 하나씩있는데 정답에 영향을 주는지도 궁금합니다. 자세한 설명 부탁드려도 될까요?
안녕하세요 길벗수험서 운영팀입니다.
아래 main( ) 에서 y 변수의 초기값으로 1을 넣었습니다.
funcA(a)를 실행하고 sum의 값을 반환을 해주는데 회원님께서 말씀하신것처럼 a배열의 값을 모두 더해 15를 반환해줍니다
y += funcA(a) 식은 y = y + funcA(a) 와 같고
이때 y는 1이고 funcA(a)에서 반환받은 값은 15이니까 y = 1 + 15 를 계산하여 16이 나오는것 입니다
initA(a); 는 배열 0~4까지 배열칸만드는게 아닙니다.
initA(a) 에서 a는 배열의 이름을 쓴것이고
배열이름만 인수로 쓰게 되면 배열의 시작 주소를 인수로 initA( ) 함수를 호출하는것입니다.
이 문제에서 void initA, void funcA 의 경우 정답에 영향을 미치지 않습니다.
행복한 하루되세요 :)
-
관리자2024-07-22 22:48:28
안녕하세요 길벗수험서 운영팀입니다.
아래 main( ) 에서 y 변수의 초기값으로 1을 넣었습니다.
funcA(a)를 실행하고 sum의 값을 반환을 해주는데 회원님께서 말씀하신것처럼 a배열의 값을 모두 더해 15를 반환해줍니다
y += funcA(a) 식은 y = y + funcA(a) 와 같고
이때 y는 1이고 funcA(a)에서 반환받은 값은 15이니까 y = 1 + 15 를 계산하여 16이 나오는것 입니다
initA(a); 는 배열 0~4까지 배열칸만드는게 아닙니다.
initA(a) 에서 a는 배열의 이름을 쓴것이고
배열이름만 인수로 쓰게 되면 배열의 시작 주소를 인수로 initA( ) 함수를 호출하는것입니다.
이 문제에서 void initA, void funcA 의 경우 정답에 영향을 미치지 않습니다.
행복한 하루되세요 :)