C언어/주차별 문제

[12주차] 동적 할당 응용

슈슈버거 2023. 6. 14. 00:56

문제


내가 작성한 코드

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

int main(void) {
    int** arr;
    int x, y;
    int average = 0;

    scanf("%d %d", &x, &y);

    arr = (int**)malloc(sizeof(int*)*y);

    for(int i = 0; i<y; i++){
        arr[i] = (int*)malloc(sizeof(int)*x);

        for(int j = 0; j<x; j++){
            scanf("%d", &arr[i][j]);
            average += arr[i][j];
        }
    }

    average /= x*y; //배열 요소들의 평균 구하기

    for(int i = 0; i < y; i++) {
        for(int j = 0; j < x; j++) {
            //평균보다 작거나 같은 경우 0으로 변경
            if(arr[i][j]<=average){
                arr[i][j] = 0;
            }
        }
    }

    for(int i = 0; i < y; i++) {
        for(int j = 0; j < x; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("\n");
    }

    free(arr);

    return 0;
}