Page 275 고등학교 프로그래밍 교과서
P. 275















139쪽 응용하기 140쪽 컴퓨팅 사고력을 키우는 수행 평가
프로그램
#include
int findprime(int num);
#include int main( )
double average(int score[ ]); {
int n, count=0;
int main( ) printf("2이상 정수 입력: ");
{ scanf("%d",&n);
double result; count = findprime(n);
if(count = = 1) {
int numbers[10] = {87, 92, 95, 91, 16, 23, 45, 67, 98, 35}; printf("%d는 소수입니다.\n",n);
result = average(numbers); }
printf("%lf", result); else {
printf("%d는 소수가 아닙니다.\n",n);
} }
double average(int score[ ]) { return 0;
int countSubject; }
int findprime(int num) {
double result; int cnt, a=2;
for(countSubject=0;countSubject<10; countSubject++) while(a <= num)
result = result + score[countSubject]; {
if(num%a = = 0)
return result/10; cnt++;
} a++;
}
return cnt;
실행 결과
}
64.900000
[해설] findprime라는 정수 매개 변수 1개와 정수 반환을 가지는 사용자 정의
함수를 만들고 그 안에서 반복문을 이용하여 매개 변수로 받은 수를 2부터 그
[해설] 수까지 나누어 본다. 그리고 나누어지는 수의 개수를 반환한다.
배열을 매개 변수로 가지는 사용자 정의 함수 average를 정의하고 배열의 요
소값의 처음부터 끝까지를 반복문을 이용하여 합하고 그 결과를 반환한다.
141쪽 내 실력 확인하기
1 사용자 정의 함수를 사용하면 같은 형태의 작업을 수행하는 코드를 여
러번 반복하지 않아도 되므로 코드의 재사용성과 가독력을 높여준다. 또
한 수정 사항이 발생할 경우 비교적 쉽게 수정할 수 있다.
2

#include
int z;
int f(int x)
{
x = 2;
z = z + x;
return z;
}
int main(void)
{
z = 5;
printf("%d", f(z));
return 0;
}

[해설] 사용자 정의 함수가 어떤 값을 반환하려면 함수를 선언할 때 그 반환
형에 맞는 자료형을 함수의 반환형으로 정의해 주어야 한다. 제시된 프로그램
은 사용자 정의 함수가 정수값을 반환해야 하므로 함수 f( )의 자료형은 void
가 아니라 int가 되어야 한다.

정답 및 해설 273






(책)2015프로그래밍-교과서3차심의본 본문.indb 273 2017-09-05 오후 4:17:13
   270   271   272   273   274   275   276   277   278   279   280