2016년 3월 15일 화요일

부분배열 최대값.

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int max=0;
    int num[100];
    int i;
    int n;

        scanf("%d",&n);

    for(i=0;i<n;i++){

        scanf("%d",num+i);
        if(max<num[i]){
          max=num[i];
          }
    }

    printf("%d\n",max);
  return EXIT_SUCCESS;
}



max를 0으로 초기화한게 걍 반복문 또 만들기 귀찮아서 그런건데

만약에 배열들 값이 다 음수 였으면 최대값이 0이 나와서 조옺되용!

그러니 배열 크기 입력 받고 arr[0] 값을 초기화하고 

max=arr[0]; 으로 초기화.

그 후 반복문 i=1로 시작하면됨.


그런데 굳이 배열 처음 값을 초기화 할 필요도 없음.

INT_MIN 로 maxn 을 초기화하면 됨.

INT_MIN 이란거는 자료형 int에서 제일 작은 값을 넣은거.

그러니 배열에 어떤 수를 입력받아도 maxn보다는 큰값으로 취급함.










댓글 없음:

댓글 쓰기