C언어/주차별 문제
[11주차] 배열의 최소값 모두 더하기
슈슈버거
2023. 6. 8. 21:42
문제
내가 작성한 코드
#include <stdio.h>
#define ARRAY_SIZE 5
int foo(int arr[][5], int x){
int result = 0; //배열의 최소값들을 합해놓을 변수
int min = 0; //배열 행마다의 최소값 저장 변수
for(int i = 0; i<x; i++){ //배열 행 만큼
min = arr[i][0]; //일단 맨 처음 값으로 설정
for(int j = 0; j<5; j++){ //5개만큼 돌면서
if(arr[i][j] <= min){ //최소값보다 작거나 같을 경우
min = arr[i][j]; //최소값 갱신
}
}
result += min; //줄 다 훑은 다음에 result에 min 더해주기
}
return result; //모든 반복 끝난 후 result 반환
}
int main() {
int x; //행 개수 저장
scanf("%d", &x);
int arr[x][ARRAY_SIZE];
for(int i = 0; i < x; i++){ //입력받기
for(int j = 0; j < ARRAY_SIZE; j++){
scanf("%d", &arr[i][j]);
}
}
//foo함수의 인자는 자유롭게 정의
int result = foo(arr, sizeof(arr)/sizeof(arr[0]));
printf("%d\n",result);
return 0;
}