본문 바로가기
Study (etc)/C

[배열]배열의 최솟값, 최댓값, 합

by Haren 2019. 1. 28.

 오늘의 실습은 1차원 배열의 활용 예제이다.

윤성우 저 '열혈 C 프로그래밍' 서적의 문제 11-1의 문제 1번을 풀어보았다.

모범 답안과 나의 풀이가 매우 유사하여 산뜻한 기분이다.


소스코드

#include <stdio.h>

int main()
{
	int arr[5];
	int max, min;
	int i,sum=0;

	
	for (i = 0; i < 5; i++)
	{
		printf("입력 : ");
		scanf_s("%d", &arr[i]);
	}

	max = arr[0]; //최대, 최소, 합을 배열의 첫 번째 원소로 초기화하여 기준으로 삼음
	min = arr[0];
	sum = arr[0];

	for (i = 1; i < 5; i++)
	{
		if (arr[i] > max)
		{
			max = arr[i];
		}
		if (arr[i] < min)
		{
			min = arr[i];
		}

		sum += arr[i];
	}

	printf("입력한 정수의 최댓값 : %d \n", max);
	printf("입력한 정수의 최솟값 : %d \n", min);
	printf("입력한 정수의 합 : %d \n", sum);

	return 0;
}

하나를 기준으로 삼고 그것을 토대로 비교하는 방식을 사용하였다. 구글에 검색하면 대부분의 예제가 이런 방식으로 최댓값과 최솟값을 산출하고 있는 것을 알 수 있다.


실행결과