Skip to content

Instantly share code, notes, and snippets.

@agiletalk
Created April 12, 2011 11:08
Show Gist options
  • Save agiletalk/915332 to your computer and use it in GitHub Desktop.
Save agiletalk/915332 to your computer and use it in GitHub Desktop.
C.A.B 실습문제 (2011.4.12)
#include <stdio.h>
// 최소값 구하는 함수 정의
// 인자: 배열(int []), 배열크기(int)
// 반환: 최소값(int)
int getMinimum(int[], int);
// 최대값 구하는 함수 정의
// 인자: 배열(int []), 배열크기(int)
// 반환: 최대값(int)
int getMaximum(int[], int);
int main()
{
int i, sum = 0, odd = 0, even = 0, input[10];
// 일단 10개의 임의의 수를 입력받는다.
for(i = 0; i < 10; i++)
{
scanf("%d", &input[i]);
}
// 1번 : 1부터 20까지 홀수의 합
for(i = 1; i <= 20; i++)
{
// 홀수인 경우
if(i%2 != 0)
{
printf("%d ", i);
sum = sum + i;
}
}
printf("\n");
// 2번 : 10개의 임의의 수에서 홀수번째 합과 짝수번째 합
for(i = 0; i < 10; i++)
{
// 짝수인 경우
if(i%2 == 0)
{
// 짝수끼리 더한 합
even = even + input[i];
}
// 홀수인 경우
else
{
// 홀수끼리 더한 합
odd = odd + input[i];
}
}
// 화면에 결과를 출력한다.
printf("1번: %d\n", sum);
printf("2번: %d %d\n", odd, even);
printf("3번: %d %d\n", getMinimum(input, 10), getMaximum(input, 10));
return 0;
}
// 3번 : 함수를 사용해서 최소값, 최대값 구하기
int getMinimum(int a[], int n)
{
// 최소값은 min에 저장하고
// 일단 배열의 첫번째 수가
// 최소값이라고 가정한다.
int i, min = a[0];
// 모든 배열의 수를 확인한다.
for(i = 0; i < n; i++)
{
// min보다 작은값이 있으면
if(a[i] < min)
{
// min에 더 작은값을 저장
min = a[i];
}
}
// 마지막에 저장된 최소값을 반환
return min;
}
int getMaximum(int a[], int n)
{
// 최대값은 max에 저장하고
// 일단 배열의 첫번째 수가
// 최대값이라고 가정한다.
int i, max = a[0];
// 모든 배열의 수를 확인한다.
for(i = 0; i < n; i++)
{
// max보다 큰값이 있으면
if(a[i] > max)
{
// max에 더 큰값을 저장
max = a[i];
}
}
// 마지막에 저장된 최대값을 반환
return max;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment