본문 바로가기
개념/혼자 공부하는 C언어

chapter 10) 배열에 값을 입력하는 함수

by kiseno 2024. 8. 2.
728x90
반응형
SMALL
#include <stdio.h>

void input_ary(double *pa, int size);
double find_max(double *pa, int size);

int main(void){
    double ary[5], max;
    int size = sizeof(ary) / sizeof(ary[0]);

    input_ary(ary, size);
    max = find_max(ary,size);
    printf("max array value : %.1lf\n", max);

    return 0;
}

void input_ary(double *pa, int size){
    int i;

    printf("%d input integer : ", size);
    for(i = 0; i< size; i++){
        scanf("%lf", pa + i);
    }
}

double find_max(double *pa, int size){
    double max;
    int i;

    max = pa[0];
    for (i = 1; i < size; i++){
        if (pa[i] > max) max = pa[i];
    }
    return max;
}

main() 함수
1-1. 크기가 5인 double 배열 ary 선언 및 최댓값을 저장할 변수 max 선언
1-2. 배열 ary의 크기를 계산하여 size 변수에 저장
1-3. input_ary() 함수 호출하여 ary 배열에 size만큼의 실수 입력 받음
1-4. find_max() 함수 호출하여 ary 배열 내 최댓값 찾고 max에 저장
1-5. "max array value : "를 출력하고 최댓값 max 출력

input_ary() 함수
2-1. double 포인터 pa(배열의 주소)와 배열의 크기 size를 매개변수로 받음
2-2. size만큼의 실수를 입력 받아 pa가 가리키는 배열에 저장

find_max() 함수
3-1. double 포인터 pa(배열의 주소)와 배열의 크기 size를 매개변수로 받음
3-2. pa가 가리키는 배열의 첫 번째 요소를 최댓값 max로 초기화
3-3. 배열을 순회하며 현재 요소가 max보다 크면 max를 현재 요소의 값으로 갱신
3-4. 최댓값 max 반환

728x90
반응형
LIST