본문 바로가기
PRACTICE/Basic

[C] 배열을 포인터로 받는 함수 만들기 - 합계, 곱하기, 출력

by 1005 2020. 7. 16.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <stdio.h>
 
int getSum(int* parr);                //배열 합계 계산 함수
void getMulti(int* parr, int size);   //배열의 값 *2 계산 함수
void printAry(int* parr, int size);   //배열을 프린트하는 함수
 
int main() {
    int arr[10= { 23,45,67,89,91,32,56,87,90,100 };
    int* parr = arr; //배열 포인터
    int size;
    int res;
 
    size = sizeof(arr) / sizeof(arr[0]); //배열 크기 저장
    
    printf("초기 배열 값 \t: ");
    printAry(parr, size);
    res = getSum(parr, size);
    printf("배열의 합계 \t: %4d \n", res);
 
    printf("초기 배열 값 x 2: ");
    getMulti(parr, size);
    printAry(parr, size);
    res = getSum(parr, size);
    printf("배열의 합계 \t: %4d \n", res);
 
    return 0;
}
int getSum(int* parr, int size) {
    int i, sum = 0;
    for (i = 0; i < size; i++) {
        sum += parr[i];
    }
    return sum;
}
void getMulti(int* parr, int size) {
    int i;
    for (i = 0; i < size; i++) {
        parr[i] *= 2;
    }
}
void printAry(int* parr, int size) {
    int i;
    for (int i = 0; i < size; i++) {
        printf("%4d ", parr[i]);
    }
    printf("\n");
}

 

 

 

댓글